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 2014/04/23 11:00:58 UTC

svn commit: r1589356 - in /httpcomponents/httpcore/trunk: RELEASE_NOTES.txt httpcore-nio/src/main/java/org/apache/http/impl/nio/reactor/AbstractMultiworkerIOReactor.java httpcore/src/main/java/org/apache/http/impl/pool/BasicConnFactory.java

Author: olegk
Date: Wed Apr 23 09:00:58 2014
New Revision: 1589356

URL: http://svn.apache.org/r1589356
Log:
HTTPCORE-377: Allow zero SO_LINGER (immediate abortive close)
Contributed by Dmitry Potapov <potapov.d at gmail.com>

Modified:
    httpcomponents/httpcore/trunk/RELEASE_NOTES.txt
    httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/reactor/AbstractMultiworkerIOReactor.java
    httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicConnFactory.java

Modified: httpcomponents/httpcore/trunk/RELEASE_NOTES.txt
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/RELEASE_NOTES.txt?rev=1589356&r1=1589355&r2=1589356&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/RELEASE_NOTES.txt (original)
+++ httpcomponents/httpcore/trunk/RELEASE_NOTES.txt Wed Apr 23 09:00:58 2014
@@ -1,6 +1,9 @@
 Changes for release 4.4-alpha1
 -------------------
 
+* [HTTPCORE-377] Allow zero SO_LINGER (immediate abortive close).
+  Contributed by Dmitry Potapov <potapov.d at gmail.com>
+
 * [HTTPCORE-376] AbstractNIOConnPool#requestCancelled() should not process pending requests
   wnen being shut down.
   Contributed by Dmitry Potapov <potapov.d at gmail.com>

Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/reactor/AbstractMultiworkerIOReactor.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/reactor/AbstractMultiworkerIOReactor.java?rev=1589356&r1=1589355&r2=1589356&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/reactor/AbstractMultiworkerIOReactor.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/reactor/AbstractMultiworkerIOReactor.java Wed Apr 23 09:00:58 2014
@@ -509,7 +509,7 @@ public abstract class AbstractMultiworke
         }
         final int linger = this.config.getSoLinger();
         if (linger >= 0) {
-            socket.setSoLinger(linger > 0, linger);
+            socket.setSoLinger(true, linger);
         }
     }
 

Modified: httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicConnFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicConnFactory.java?rev=1589356&r1=1589355&r2=1589356&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicConnFactory.java (original)
+++ httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicConnFactory.java Wed Apr 23 09:00:58 2014
@@ -169,7 +169,7 @@ public class BasicConnFactory implements
         socket.setTcpNoDelay(this.sconfig.isTcpNoDelay());
         final int linger = this.sconfig.getSoLinger();
         if (linger >= 0) {
-            socket.setSoLinger(linger > 0, linger);
+            socket.setSoLinger(true, linger);
         }
         socket.setKeepAlive(this.sconfig.isSoKeepAlive());
         return this.connFactory.createConnection(socket);