Author: markt
Date: Mon Sep 14 15:39:46 2015
New Revision: 1702971
URL: http://svn.apache.org/r1702971
Log:
Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=58371
Fix data race accessing request URI in String form when switching from
non-async to async due to early triggering of the gathering of request
statistics.
Modified:
tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java
Modified: tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java?rev=1702971&r1=1702970&r2=1702971&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java Mon Sep 14
15:39:46 2015
@@ -1142,9 +1142,9 @@ public class Http11Processor extends Abs
if (getErrorState().isError()) {
response.setStatus(500);
}
- request.updateCounters();
if (!isAsync() || getErrorState().isError()) {
+ request.updateCounters();
if (getErrorState().isIoAllowed()) {
inputBuffer.nextRequest();
outputBuffer.nextRequest();
@@ -1751,10 +1751,12 @@ public class Http11Processor extends Abs
rp.setStage(org.apache.coyote.Constants.STAGE_ENDED);
if (getErrorState().isError()) {
+ request.updateCounters();
return SocketState.CLOSED;
} else if (isAsync()) {
return SocketState.LONG;
} else {
+ request.updateCounters();
if (!keepAlive) {
return SocketState.CLOSED;
} else {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]