JBoss Community

EOFExceptions and IOExceptions in EJB calls under load

created by Christian Kölle in JBoss Remoting - View the full discussion

Hi

 

We have a web application that ist split up in a frontend and a backend application. The frontend calls EJBs in the backend. This works pretty well but in production we occasionaly we get exceptions at times that we know as high load periods.

 

Both applications run on JBoss 7.1.2 application servers.

 

In the frontend we see something like this:

 

00:59:10,337 ERROR [org.jboss.remoting.remote.connection] (Remoting "jboss-web-extern" read-1) JBREM000200: Remote connection failed: java.io.IOException: Input overrun

00:59:10,393 ERROR [ch.nic.reg.web.action.ds.uc02.DomainBasketHandler] (ajp-/0.0.0.0:8009-130) Cannot perform usecase ***

java.lang.reflect.UndeclaredThrowableException

        $Proxy75.performUseCase(Unknown Source)

         ......

Cause: java.io.EOFException: Writes have been shut down

        org.xnio.channels.FramedMessageChannel.send(FramedMessageChannel.java:220)

        org.xnio.channels.Channels.sendBlocking(Channels.java:200)

        org.jboss.remoting3.remote.OutboundMessage$1.accept(OutboundMessage.java:109)

        org.xnio.streams.BufferPipeOutputStream.send(BufferPipeOutputStream.java:125)

        org.xnio.streams.BufferPipeOutputStream.send(BufferPipeOutputStream.java:113)

 

In the backend something like this:

 

00:59:10,348 ERROR [org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler] (EJB default - 13) Could not write method invocation result for method public *** on bean named *** for appname *** modulename common-ejb distinctname due to : java.io.IOException: Broken pipe

        at sun.nio.ch.FileDispatcherImpl.write0(Native Method) [rt.jar:1.7.0_06]

        at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47) [rt.jar:1.7.0_06]

        at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:89) [rt.jar:1.7.0_06]

        at sun.nio.ch.IOUtil.write(IOUtil.java:60) [rt.jar:1.7.0_06]

        at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:450) [rt.jar:1.7.0_06]

        at org.xnio.nio.AbstractNioStreamChannel.write(AbstractNioStreamChannel.java:303)

        at org.xnio.channels.FramedMessageChannel.doFlushBuffer(FramedMessageChannel.java:297) [xnio-api-3.0.3.GA.jar:3.0.3.GA]

        at org.xnio.channels.FramedMessageChannel.doFlush(FramedMessageChannel.java:311) [xnio-api-3.0.3.GA.jar:3.0.3.GA]

        at org.xnio.channels.FramedMessageChannel.send(FramedMessageChannel.java:238) [xnio-api-3.0.3.GA.jar:3.0.3.GA]

        at org.xnio.channels.Channels.sendBlocking(Channels.java:200) [xnio-api-3.0.3.GA.jar:3.0.3.GA]

        at org.jboss.remoting3.remote.OutboundMessage$1.accept(OutboundMessage.java:109) [jboss-remoting-3.2.7.GA.jar:3.2.7.GA]

        at org.xnio.streams.BufferPipeOutputStream.send(BufferPipeOutputStream.java:125) [xnio-api-3.0.3.GA.jar:3.0.3.GA]

        at org.xnio.streams.BufferPipeOutputStream.send(BufferPipeOutputStream.java:113) [xnio-api-3.0.3.GA.jar:3.0.3.GA]

        at org.xnio.streams.BufferPipeOutputStream.flush(BufferPipeOutputStream.java:142) [xnio-api-3.0.3.GA.jar:3.0.3.GA]

        at org.xnio.streams.BufferPipeOutputStream.close(BufferPipeOutputStream.java:160) [xnio-api-3.0.3.GA.jar:3.0.3.GA]

        at org.jboss.remoting3.remote.OutboundMessage.close(OutboundMessage.java:193) [jboss-remoting-3.2.7.GA.jar:3.2.7.GA]

        at org.jboss.as.ejb3.remote.protocol.versionone.ChannelAssociation.releaseChannelMessageOutputStream(ChannelAssociation.java:85)

        at org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler.writeMethodInvocationResponse(MethodInvocationMessageHandler.java:348)

        at org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler.access$500(MethodInvocationMessageHandler.java:67)

        at org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler$1.run(MethodInvocationMessageHandler.java:237)

        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [rt.jar:1.7.0_06]

        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) [rt.jar:1.7.0_06]

        at java.util.concurrent.FutureTask.run(FutureTask.java:166) [rt.jar:1.7.0_06]

        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [rt.jar:1.7.0_06]

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [rt.jar:1.7.0_06]

        at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_06]

        at org.jboss.threads.JBossThread.run(JBossThread.java:122) [jboss-threads-2.0.0.GA.jar:2.0.0.GA]

 

I haven't found more information on this exceptions on the net.

 

For me it is not clear what this means. Does this have an effect on the users? Is there a problem with our implementation or perhaps the configuration?

 

Christian

Reply to this message by going to Community

Start a new discussion in JBoss Remoting at Community