2014-03-21 10:42 GMT+01:00 Konstantin Kolinko <knst.koli...@gmail.com>:

> I am not voting yet.
> The test suite did pass successfully for BIO,NIO,APR,NIO2 with JDK
> 7u51 (32-bit) on Windows 7,  except for the following test with NIO2:
>
> TEST-org.apache.catalina.connector.TestCoyoteOutputStream.NIO2.txt
> [[[
> Testcase: testNonBlockingWriteTwiceBlockingWriteOnce took 300,096 sec
>     Caused an ERROR
>

Works for me (like that SSL test ...).


> There are a number of the following messages in the log files (in 3
> files for NIO2, in 1 file for BIO):
> java.util.concurrent.RejectedExecutionException: Executor not running,
> can't force a command into the queue
>

Yes, I get some of them too. There's a completion handler waiting on
keepalive, that gets a failed when closing the server socket, which seems
normal to me. But there are no checks for the running state there, it will
try to process the close. So that should be cosmetic, I think I'll check
the best option between toning down the thing to debug level, adding a
check for the running flag, etc.

Example stack from the TestCoyoteOutputStream logs:
20-Mar-2014 14:48:14.605 WARNING [http-nio2-127.0.0.1-auto-4-exec-7]
org.apache.tomcat.util.net.Nio2Endpoint.processSocket0 Executor rejected
socket [org.apache.tomcat.util.net.Nio2Endpoint$Nio2SocketWrapper@3e7747dc:null]
for processing
 java.util.concurrent.RejectedExecutionException: Executor not running,
can't force a command into the queue
    at org.apache.tomcat.util.threads.TaskQueue.force(TaskQueue.java:63)
    at
org.apache.tomcat.util.threads.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:180)

    at
org.apache.tomcat.util.threads.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:155)

    at
org.apache.tomcat.util.net.Nio2Endpoint.processSocket0(Nio2Endpoint.java:561)

    at
org.apache.tomcat.util.net.Nio2Endpoint$1.failed(Nio2Endpoint.java:932)
    at
org.apache.tomcat.util.net.Nio2Endpoint$1.failed(Nio2Endpoint.java:919)


> Those are in
> TEST-org.apache.catalina.connector.TestCoyoteOutputStream.NIO2.txt
> TEST-org.apache.coyote.http11.upgrade.TestUpgrade.BIO.txt
> TEST-org.apache.coyote.http11.upgrade.TestUpgrade.NIO2.txt
> TEST-org.apache.tomcat.websocket.TestWsWebSocketContainer.NIO2.txt
>
> According to the logs when RejectedExecutionException happens the
> protocol handler have been stopped and destroyed several msecs before
> that event.
>
> With websockets, I get some additional shutdown errors too.

BTW, the stability vote is not about NIO2, it is experimental (and will
remain that way for an indefinite amount of time, maybe until its removal
if not successful enough).

Rémy

Reply via email to