Looks like the ResponseCorrelator is not releasing outstanding requests when an async exception is encountered. Working on a fix now.
see: http://issues.apache.org/activemq/browse/AMQ-691 On 4/18/06, skarthik <[EMAIL PROTECTED]> wrote: > > Hi, > > We just found that similar situation (publish call hanging) occurs after > the following errors were reported by the ExceptionListener. These errors > are different from network failure described in the previous post. > > These were noticed in our application environment which consists of 1 JMS > server (activeMQ) and about 10 JMS client processes all running on same host > machine (for now), each of which may have about 4-10 TopicSessions (producer > or consumer) each. Any given error was observed in only one of the clients > at a time. > > The purpose of this post was just to clarify that the publish call hanging > is not related to just the socket reset error case. > > 2006-04-12 23:41:05,872 [tcp:///143.102.32.213:8000] - [ChannelListMgr] Got > JMSError notification > javax.jms.JMSException: java.io.EOFException > at > org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:45) > at > org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1397) > at > org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1406) > at > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:102) > at > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:102) > at > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:102) > at > org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:120) > at > org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:149) > at > org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:100) > at > org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:152) > at java.lang.Thread.run(Thread.java:534) > Caused by: java.io.EOFException > at java.io.DataInputStream.readInt(DataInputStream.java:448) > at > org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:270) > at > org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:138) > ... 1 more > > > 2006-04-13 09:09:48,296 [tcp:///143.102.32.213:8000] - [ChannelListMgr] Got > JMSError notification > javax.jms.JMSException: Unknown data type: -118 > at > org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:45) > at > org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1397) > at > org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1406) > at > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:102) > at > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:102) > at > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:102) > at > org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:120) > at > org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:149) > at > org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:100) > at > org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:152) > at java.lang.Thread.run(Thread.java:534) > Caused by: java.io.IOException: Unknown data type: -118 > at > org.apache.activemq.openwire.OpenWireFormat.doUnmarshal(OpenWireFormat.java:341) > at > org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:272) > at > org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:138) > ... 1 more > > > 2006-04-14 14:58:35,781 [ActiveMQ Scheduler] - [ChannelListMgr] Got JMSError > notification > javax.jms.JMSException: Channel was inactive for too long. > at > org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:45) > at > org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1397) > at > org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1406) > at > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:102) > at > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:102) > at > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:102) > at > org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:120) > at > org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:149) > at > org.apache.activemq.transport.InactivityMonitor.readCheck(InactivityMonitor.java:101) > at > org.apache.activemq.transport.InactivityMonitor.access$000(InactivityMonitor.java:35) > at > org.apache.activemq.transport.InactivityMonitor$1.run(InactivityMonitor.java:51) > at > edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:431) > at > edu.emory.mathcs.backport.java.util.concurrent.FutureTask.runAndReset(FutureTask.java:198) > at > edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:189) > at > edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:213) > at > edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) > at > edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) > at java.lang.Thread.run(Thread.java:534) > Caused by: org.apache.activemq.transport.InactivityIOException: Channel was > inactive for too long. > ... 10 more > > Hope this helps. > > Thanks > karthik > -- > View this message in context: > http://www.nabble.com/publish%28%29-call-to-remote-JMS-server-hangs-t1446830.html#a3975557 > Sent from the ActiveMQ - User forum at Nabble.com. > > -- Regards, Hiram
