Author: fhanik Date: Sat Apr 14 09:31:45 2007 New Revision: 528832 URL: http://svn.apache.org/viewvc?view=rev&rev=528832 Log: Revert to revision 528735, something is broken and I'm losing my mind
Modified: tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/SocketProperties.java Modified: tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java?view=diff&rev=528832&r1=528831&r2=528832 ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java Sat Apr 14 09:31:45 2007 @@ -950,14 +950,7 @@ rp.setStage(org.apache.coyote.Constants.STAGE_KEEPALIVE); - if (!error && keepAlive && !comet) { - //we're at a keep alive stage, - openSocket = true; - //Add the socket to the poller - socket.getPoller().add(socket); - //free up the thread - break; - } + } rp.setStage(org.apache.coyote.Constants.STAGE_ENDED); Modified: tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java?view=diff&rev=528832&r1=528831&r2=528832 ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java Sat Apr 14 09:31:45 2007 @@ -1116,11 +1116,21 @@ workers.notify(); } } + /** + * Process given socket. + */ + protected boolean processSocket(NioChannel socket) { + return processSocket(socket,null); + } /** * Process given socket for an event. */ + protected boolean processSocket(NioChannel socket, SocketStatus status) { + return processSocket(socket,status,true); + } + protected boolean processSocket(NioChannel socket, SocketStatus status, boolean dispatch) { try { if (executor == null) { @@ -1316,7 +1326,7 @@ public void addEvent(Runnable event) { events.offer(event); - if ( wakeupCounter.incrementAndGet() == 1 || wakeupCounter.get() > 5 ) selector.wakeup(); + if ( wakeupCounter.incrementAndGet() < 3 ) selector.wakeup(); } /** @@ -1418,10 +1428,7 @@ int keyCount = 0; try { if ( !close ) { - if ( wakeupCounter.get() > 0 ) - keyCount = selector.selectNow(); //we have events that need to be processed - else - keyCount = selector.select(selectorTimeout); + keyCount = selector.select(selectorTimeout); wakeupCounter.set(0); } if (close) { @@ -1494,8 +1501,8 @@ //check if thread is available if ( isWorkerAvailable() ) { unreg(sk, attachment); - if (!processSocket(channel, SocketStatus.OPEN,true)) - processSocket(channel, SocketStatus.DISCONNECT,true); + if (!processSocket(channel, SocketStatus.OPEN)) + processSocket(channel, SocketStatus.DISCONNECT); attachment.setFairness(0); } else { //increase the fairness counter @@ -1509,7 +1516,7 @@ //later on, improve latch behavior if ( isWorkerAvailable() ) { unreg(sk, attachment); - boolean close = (!processSocket(channel,null,true)); + boolean close = (!processSocket(channel)); if (close) { cancelledKey(sk,SocketStatus.DISCONNECT,false); } @@ -1622,6 +1629,7 @@ cancelledKey(key, SocketStatus.ERROR,false); } }//for + if ( log.isDebugEnabled() ) log.debug("Poller processed "+keycount+" keys through timeout"); } } @@ -1911,8 +1919,6 @@ } finally { //dereference socket to let GC do its job socket = null; - this.socket = null; - key = null; // Finish up this request recycleWorkerThread(this); } Modified: tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/SocketProperties.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/SocketProperties.java?view=diff&rev=528832&r1=528831&r2=528832 ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/SocketProperties.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/SocketProperties.java Sat Apr 14 09:31:45 2007 @@ -82,7 +82,7 @@ * The application write buffer size in bytes * Default value is txBufSize */ - protected int appWriteBufSize = txBufSize; + protected int appWriteBufSize = 8192; /** * NioChannel pool size for the endpoint, --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]