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: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org