Am 01.05.2015 um 01:47 schrieb Ognjen Blagojevic:
On 29.4.2015 18:41, Mark Thomas wrote:
The proposed 8.0.22 release is:
[X] Broken - do not release
[ ] Stable - go ahead and release as 8.0.22

Tested .zip distribution on Windows 7 64-bit, Oracle JDK 1.8.0_45 and APR/native 1.1.33:

- Crawled all links (except /manager, /host-manager and /examples/async*). No broken links found, except links to JavaDocs.

- Smoke tests of BIO, NIO, NIO2 and APR, with and without TLS. Only NIO2+TLS fails.

Connector configuration:

<Connector port="449" protocol="org.apache.coyote.http11.Http11Nio2Protocol" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS"
               keystoreFile="(snip).p12" keyAlias="(snip)"
               keystoreType="pkcs12" />


I smoke tested with this crawler:

  https://bz.apache.org/bugzilla/attachment.cgi?id=31184



I get in the logs some of those:

01-May-2015 01:29:59.631 SEVERE [http-apr-83-exec-7] org.apache.coyote.http11.AbstractHttp11Processor.endRequest Error finishing response
 org.apache.tomcat.jni.Error: 20005: An invalid socket was returned
    at org.apache.tomcat.jni.Socket.sendbb(Native Method)
at org.apache.coyote.http11.InternalAprOutputBuffer.writeToSocket(InternalAprOutputBuffer.java:287) at org.apache.coyote.http11.InternalAprOutputBuffer.writeToSocket(InternalAprOutputBuffer.java:244) at org.apache.coyote.http11.InternalAprOutputBuffer.flushBuffer(InternalAprOutputBuffer.java:213) at org.apache.coyote.http11.AbstractOutputBuffer.endRequest(AbstractOutputBuffer.java:378) at org.apache.coyote.http11.AbstractHttp11Processor.endRequest(AbstractHttp11Processor.java:1800) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1143) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2463) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2452) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:745)


And a lot of those:

01-May-2015 01:29:59.625 WARNING [http-nio2-84-exec-6] org.apache.tomcat.util.net.AbstractEndpoint.countDownConnection Incorrect connection count, multiple socket.close called on the same socket. 01-May-2015 01:29:59.627 WARNING [http-nio2-84-exec-4] org.apache.tomcat.util.net.AbstractEndpoint.countDownConnection Incorrect connection count, multiple socket.close called on the same socket. 01-May-2015 01:29:59.627 WARNING [http-nio2-84-exec-1] org.apache.tomcat.util.net.AbstractEndpoint.countDownConnection Incorrect connection count, multiple socket.close called on the same socket.


I probably won't be able to do any more tests before Monday.

I have done some tests with jmeter. Calling the "home" page of tomcat through TLS with the different connectors BIO, NIO and NIO2. Using 100 concurrent "clients" and letting each client repeat 1000 requests, I get the following results:

* NIO and BIO run without errors.

* NIO2 seems to run OK at first, but after a while (last test the "while" ended after 17900 requests) jmeters threads will not get a response from tomcat. The test will continue when the clients timeout after 60 seconds.

I see no errors in tomcat logs. The access logs show a time jump of one minute:
192.168.178.20 - - [01/May/2015:13:57:39 +0200] "GET / HTTP/1.1" 200 11250
192.168.178.20 - - [01/May/2015:13:57:39 +0200] "GET / HTTP/1.1" 200 11250
192.168.178.20 - - [01/May/2015:13:57:39 +0200] "GET / HTTP/1.1" 200 11250 <--- JUMP 192.168.178.20 - - [01/May/2015:13:58:33 +0200] "GET / HTTP/1.1" 200 11250 <---
192.168.178.20 - - [01/May/2015:13:58:33 +0200] "GET / HTTP/1.1" 200 11250
192.168.178.20 - - [01/May/2015:13:58:33 +0200] "GET / HTTP/1.1" 200 11250
192.168.178.20 - - [01/May/2015:13:58:33 +0200] "GET / HTTP/1.1" 200 11250

If I repeat the same tests with 8.0.21 the test will run without delay (or timeout on jmeter side).

Without encryption all connectors will complete the tests without delay on 8.0.22.

Regards
 Felix

-Ognjen

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



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

Reply via email to