You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2016/05/27 10:05:07 UTC

svn commit: r1745735 - in /tomcat/trunk: java/org/apache/coyote/AbstractProtocol.java webapps/docs/changelog.xml

Author: markt
Date: Fri May 27 10:05:07 2016
New Revision: 1745735

URL: http://svn.apache.org/viewvc?rev=1745735&view=rev
Log:
If a request processor in async mode experiences a read or write timeout, ensure that the request processor is removed from the set of waiting request processors else the async timeout thread may attempt to timeout the request processor after it has been recycled.

Modified:
    tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java
    tomcat/trunk/webapps/docs/changelog.xml

Modified: tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java?rev=1745735&r1=1745734&r2=1745735&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java (original)
+++ tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java Fri May 27 10:05:07 2016
@@ -977,6 +977,7 @@ public abstract class AbstractProtocol<S
             S socket = socketWrapper.getSocket();
             if (socket != null) {
                 Processor processor = connections.remove(socket);
+                getProtocol().removeWaitingProcessor(processor);
                 release(processor);
             }
         }

Modified: tomcat/trunk/webapps/docs/changelog.xml
URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1745735&r1=1745734&r2=1745735&view=diff
==============================================================================
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Fri May 27 10:05:07 2016
@@ -98,6 +98,12 @@
         <bug>59564</bug>: Correct offset when reading into HTTP/2 input buffer
         that could cause problems reading request bodies. (violetagg/markt)
       </fix>
+      <fix>
+        If a request processor in async mode experiences a read or write
+        timeout, ensure that the request processor is removed from the set of
+        waiting request processors else the async timeout thread may attempt to
+        timeout the request processor after it has been recycled. (markt)
+      </fix>
     </changelog>
   </subsection>
   <subsection name="Jasper">



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org