Hello,
We are using Tomcat 7.0.61 and we are seeing the following error in
catalina.out:
Apr 29, 2015 2:23:14 PM org.apache.coyote.AbstractProcessor
setErrorState
INFO: An error occurred in processing while on a non-container thread.
The connection will be closed immediately
java.io.IOException
at
rg.apache.coyote.http11.InternalAprOutputBuffer.flushBuffer(InternalAprOutp
utBuffer.java:205)
at
org.apache.coyote.http11.InternalAprOutputBuffer.flush(InternalAprOutputBuf
fer.java:109)
at
org.apache.coyote.http11.AbstractHttp11Processor.action(AbstractHttp11Proce
ssor.java:801)
at org.apache.coyote.Response.action(Response.java:172)
at
org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:363)
at
org.apache.catalina.connector.OutputBuffer.flush(OutputBuffer.java:331)
at
org.apache.catalina.connector.CoyoteOutputStream.flush(CoyoteOutputStream.j
ava:101)
at
org.granite.gravity.AbstractChannel.runReceived(AbstractChannel.java:264)
at
org.granite.gravity.AbstractChannel.runReceive(AbstractChannel.java:199)
at org.granite.gravity.AsyncReceiver.doRun(AsyncReceiver.java:34)
at
org.granite.gravity.AsyncChannelRunner.run(AsyncChannelRunner.java:52)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1
145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:
615)
at java.lang.Thread.run(Thread.java:745)
Apr 29, 2015 2:23:14 PM org.apache.coyote.AbstractProcessor
setErrorState
INFO: An error occurred in processing while on a non-container thread.
The connection will be closed immediately
java.io.IOException
at
org.apache.coyote.http11.InternalAprOutputBuffer.flushBuffer(InternalAprOut
putBuffer.java:205)
at
org.apache.coyote.http11.InternalAprOutputBuffer.endRequest(InternalAprOutp
utBuffer.java:150)
at
org.apache.coyote.http11.AbstractHttp11Processor.action(AbstractHttp11Proce
ssor.java:762)
at org.apache.coyote.Response.action(Response.java:174)
at org.apache.coyote.Response.finish(Response.java:274)
at
org.apache.catalina.connector.OutputBuffer.close(OutputBuffer.java:319)
at
org.apache.catalina.connector.CoyoteOutputStream.close(CoyoteOutputStream.j
ava:108)
at
org.granite.gravity.AbstractChannel.runReceived(AbstractChannel.java:308)
at
org.granite.gravity.AbstractChannel.runReceive(AbstractChannel.java:199)
at org.granite.gravity.AsyncReceiver.doRun(AsyncReceiver.java:34)
at
org.granite.gravity.AsyncChannelRunner.run(AsyncChannelRunner.java:52)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1
145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:
615)
at java.lang.Thread.run(Thread.java:745)
Apr 29, 2015 2:23:14 PM org.apache.tomcat.util.net.AprEndpoint
processSocketAsync
SEVERE: Error allocating socket processor
java.lang.NullPointerException
at
org.apache.tomcat.util.net.AprEndpoint.processSocketAsync(AprEndpoint.java:
885)
at
org.apache.coyote.AbstractProcessor.setErrorState(AbstractProcessor.java:84
)
at
org.apache.coyote.http11.AbstractHttp11Processor.action(AbstractHttp11Proce
ssor.java:764)
at org.apache.coyote.Response.action(Response.java:174)
at org.apache.coyote.Response.finish(Response.java:274)
at
org.apache.catalina.connector.OutputBuffer.close(OutputBuffer.java:319)
at
org.apache.catalina.connector.CoyoteOutputStream.close(CoyoteOutputStream.j
ava:108)
at
org.granite.gravity.AbstractChannel.runReceived(AbstractChannel.java:308)
at
org.granite.gravity.AbstractChannel.runReceive(AbstractChannel.java:199)
at org.granite.gravity.AsyncReceiver.doRun(AsyncReceiver.java:34)
at
org.granite.gravity.AsyncChannelRunner.run(AsyncChannelRunner.java:52)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1
145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:
615)
at java.lang.Thread.run(Thread.java:745)
We are also seeing this, which also happens with stream.close() around the
same time:
Exception in thread "pool-4-thread-3" java.lang.Error:
org.apache.tomcat.jni.Error: 20005: An invalid socket was returned
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1
151)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:
615)
at java.lang.Thread.run(Thread.java:745)
Caused by: 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.flushBuffer(InternalAprOut
putBuffer.java:204)
at
org.apache.coyote.http11.InternalAprOutputBuffer.endRequest(InternalAprOutp
utBuffer.java:150)
at
org.apache.coyote.http11.AbstractHttp11Processor.action(AbstractHttp11Proce
ssor.java:762)
at org.apache.coyote.Response.action(Response.java:174)
at org.apache.coyote.Response.finish(Response.java:274)
at
org.apache.catalina.connector.OutputBuffer.close(OutputBuffer.java:319)
at
org.apache.catalina.connector.CoyoteOutputStream.close(CoyoteOutputStream.j
ava:108)
at
org.granite.gravity.AbstractChannel.runReceived(AbstractChannel.java:308)
at
org.granite.gravity.AbstractChannel.runReceive(AbstractChannel.java:199)
at org.granite.gravity.AsyncReceiver.doRun(AsyncReceiver.java:34)
at
org.granite.gravity.AsyncChannelRunner.run(AsyncChannelRunner.java:52)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1
145)
... 2 more
The ³org.gravity² package is GraniteDS, a third party library we are
using. I can tell you what is happening:
1. GraniteDS is calling flush() on an output stream. This is throwing a
ClientAbortException. I think this is the first error seen above. You can
see it in the call stack (AbstractChannel.runReceived).
2. In the catch block, GraniteDS is calling close() on this stream. This
causes the 2nd and 3rd error seen above.
We are having some stability issues with Tomcat, Tomcat crashes right
after one of these happens. It doesn¹t crash every time. Is this a bug in
Tomcat or APR? Is there anything we can do to avoid it?
Thanks
________________________________
This message is confidential and may be legally privileged or otherwise
protected from disclosure because it contains proprietary information. If
you are not the intended recipient please e-mail the sender and delete it
and any attachment from your system. You must not copy or disclose the
contents of this message or any attachment to any other person.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]