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 2013/05/23 01:11:47 UTC
svn commit: r1485489 -
/tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java
Author: markt
Date: Wed May 22 23:11:47 2013
New Revision: 1485489
URL: http://svn.apache.org/r1485489
Log:
Revert r1485458. Right idea but that isn't how to do it.
Modified:
tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java
Modified: tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java?rev=1485489&r1=1485488&r2=1485489&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java Wed May 22 23:11:47 2013
@@ -1602,12 +1602,14 @@ public class AprEndpoint extends Abstrac
log.debug("Poller run() adding socket: " +
info.socket);
}
- removeFromPoller(info.socket);
timeouts.remove(info.socket);
if (info.read() || info.write()) {
AprSocketWrapper wrapper = connections.get(
Long.valueOf(info.socket));
boolean comet = wrapper.isComet();
+ if (comet || wrapper.pollerFlags != 0) {
+ removeFromPoller(info.socket);
+ }
wrapper.pollerFlags = wrapper.pollerFlags |
(info.read() ? Poll.APR_POLLIN : 0) |
(info.write() ? Poll.APR_POLLOUT : 0);
@@ -1649,6 +1651,11 @@ public class AprEndpoint extends Abstrac
pollerSpace[i] += rv;
connectionCount -= rv;
for (int n = 0; n < rv; n++) {
+ if (log.isDebugEnabled()) {
+ log.debug("Poller run() poll() of socket " +
+ desc[n*2+1] + " with flags " +
+ desc[n*2]);
+ }
timeouts.remove(desc[n*2+1]);
AprSocketWrapper wrapper = connections.get(
Long.valueOf(desc[n*2+1]));
@@ -1665,7 +1672,7 @@ public class AprEndpoint extends Abstrac
}
} else if ((desc[n*2] & Poll.APR_POLLIN) == Poll.APR_POLLIN) {
if (wrapper.pollerFlags != 0) {
- add(desc[n*2+1], 1, wrapper.pollerFlags);
+ add(desc[n*2+1], 0, wrapper.pollerFlags);
}
if (!processSocket(desc[n*2+1], SocketStatus.OPEN_READ)) {
// Close socket and clear pool
@@ -1673,7 +1680,7 @@ public class AprEndpoint extends Abstrac
}
} else if ((desc[n*2] & Poll.APR_POLLOUT) == Poll.APR_POLLOUT) {
if (wrapper.pollerFlags != 0) {
- add(desc[n*2+1], 1, wrapper.pollerFlags);
+ add(desc[n*2+1], 0, wrapper.pollerFlags);
}
if (!processSocket(desc[n*2+1], SocketStatus.OPEN_WRITE)) {
// Close socket and clear pool
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org