title: How to properly set JavaMail timeout setting
body: <p>I am using JavaMail to connect to a POP3 server.</p>
  
  <p>Further, I set the following properties, so that JavaMail won't wait to long if an email server doesn't respond:</p>
  
  <pre><code>props.setProperty("mail.pop3.connectionpooltimeout", "3000");
  props.setProperty("mail.pop3.connectiontimeout", "3000");
  props.setProperty("mail.pop3.timeout", "3000");
  </code></pre>
  
  <p>However, in some cases the timeout works properly but sometimes JavaMail freezes for minutes(!) with the following debug message:</p>
  
  <pre><code>DEBUG POP3: connecting to host "pop3.yahoo.com", port 110, isSSL false
  </code></pre>
  
  <p>Changing ports or protocols (SSL, TLS..) has no effect. I assume that the host simply doesn't exist.</p>
  
  <p><strong>For example</strong>, if I poll pop3.yahoo.com instead of pop.mail.yahoo.com (which would be the right host name), I have to wait very long til a timeout exception occurs.
  After several minutes, I get the following exception and the application continues to run:</p>
  
  <pre><code>java.net.ConnectException: Operation timed out
  </code></pre>
  
  <p>pop3.yahoo.com seems to exist but won't respond:</p>
  
  <pre><code>localhost:~ me$ ping pop3.yahoo.com
  PING pop3.yahoo.com (206.190.46.10): 56 data bytes
  Request timeout for icmp_seq 0
  Request timeout for icmp_seq 1
  Request timeout for icmp_seq 2
  Request timeout for icmp_seq 3
  ^C
  </code></pre>
  
  <p>You might be asking why I use pop3.yahoo.com instead of pop.mail.yahoo.com.
  Well, I simply wanted to test what happens if the user of my application inserts a wrong host name.</p>
  
  <p>I believe that this issue is related to this report <a href="http://www.opensubscriber.com/message/javamail-interest@java.sun.com/180946.html" rel="nofollow">http://www.opensubscriber.com/message/javamail-interest@java.sun.com/180946.html</a> where the poster claims that the problem occurs if the email server closes the connection. JavaMail then seems to wait very long (don't know why).</p>
  
  <p>Since the issue wasn't resolved in the link I posted: Does somebody know how to fix or at least debug this?</p>
  
  <p>Any help would be <em>really appreciated</em>!</p>