You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2007/03/31 13:46:18 UTC

svn commit: r524410 - in /jakarta/httpcomponents/httpcore/trunk: RELEASE_NOTES.txt module-nio/src/main/java/org/apache/http/impl/nio/reactor/DefaultConnectingIOReactor.java

Author: olegk
Date: Sat Mar 31 04:46:18 2007
New Revision: 524410

URL: http://svn.apache.org/viewvc?view=rev&rev=524410
Log:
HTTPCORE-56: DefaultConnectingIOReactor no longer terminates due to a CancelledKeyException, if a session request gets canceled before selection key is fully initialized

Modified:
    jakarta/httpcomponents/httpcore/trunk/RELEASE_NOTES.txt
    jakarta/httpcomponents/httpcore/trunk/module-nio/src/main/java/org/apache/http/impl/nio/reactor/DefaultConnectingIOReactor.java

Modified: jakarta/httpcomponents/httpcore/trunk/RELEASE_NOTES.txt
URL: http://svn.apache.org/viewvc/jakarta/httpcomponents/httpcore/trunk/RELEASE_NOTES.txt?view=diff&rev=524410&r1=524409&r2=524410
==============================================================================
--- jakarta/httpcomponents/httpcore/trunk/RELEASE_NOTES.txt (original)
+++ jakarta/httpcomponents/httpcore/trunk/RELEASE_NOTES.txt Sat Mar 31 04:46:18 2007
@@ -1,3 +1,10 @@
+Changes since 4.0 Alpha 4
+
+* [HTTPCORE-56]: DefaultConnectingIOReactor no longer terminates due to a
+  CancelledKeyException, if a session request gets canceled before selection
+  key is fully initialized. 
+  Contributed by Oleg Kalnichevski <olegk at apache.org>
+
 Release 4.0 Alpha 4
 -------------------
 

Modified: jakarta/httpcomponents/httpcore/trunk/module-nio/src/main/java/org/apache/http/impl/nio/reactor/DefaultConnectingIOReactor.java
URL: http://svn.apache.org/viewvc/jakarta/httpcomponents/httpcore/trunk/module-nio/src/main/java/org/apache/http/impl/nio/reactor/DefaultConnectingIOReactor.java?view=diff&rev=524410&r1=524409&r2=524410
==============================================================================
--- jakarta/httpcomponents/httpcore/trunk/module-nio/src/main/java/org/apache/http/impl/nio/reactor/DefaultConnectingIOReactor.java (original)
+++ jakarta/httpcomponents/httpcore/trunk/module-nio/src/main/java/org/apache/http/impl/nio/reactor/DefaultConnectingIOReactor.java Sat Mar 31 04:46:18 2007
@@ -264,8 +264,12 @@
             }
 
             SessionRequestHandle requestHandle = new SessionRequestHandle(request); 
-            key.attach(requestHandle);
-            key.interestOps(SelectionKey.OP_CONNECT);
+            try {
+                key.attach(requestHandle);
+                key.interestOps(SelectionKey.OP_CONNECT);
+            } catch (CancelledKeyException ex) {
+                // Ignore cancelled keys
+            }
         }
     }