You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Timothy Bish (JIRA)" <ji...@apache.org> on 2011/08/10 22:57:28 UTC
[jira] [Closed] (AMQ-2067) After getting an EOFException with the
JMS connection, the channel is inactive and the server is not able to
recover its connection to ActiveMQ.
[ https://issues.apache.org/jira/browse/AMQ-2067?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Timothy Bish closed AMQ-2067.
-----------------------------
Resolution: Not A Problem
> After getting an EOFException with the JMS connection, the channel is inactive and the server is not able to recover its connection to ActiveMQ.
> ------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: AMQ-2067
> URL: https://issues.apache.org/jira/browse/AMQ-2067
> Project: ActiveMQ
> Issue Type: Bug
> Affects Versions: 5.0.0
> Environment: Solaris with server JBOSS connecting to a standalone Message FUSE Broker ActiveMQ server 5.0.0.14
> Reporter: Pierre-Luc Dupont
>
> We have this problem and it is causing a lot of trouble since we need to restart our server every time that this error occurs.
> Can someone help me to fix or give me a procedure to avoid this situation?
> Thank you!
> This is our configuration in our deploy folder.
> <?xml version="1.0" encoding="UTF-8"?>
> <!DOCTYPE connection-factories
> PUBLIC "-//JBoss//DTD JBOSS JCA Config 1.5//EN"
> "http://www.jboss.org/j2ee/dtd/jboss-ds_1_5.dtd">
> <connection-factories>
> <tx-connection-factory>
> <jndi-name>activemq/QueueConnectionFactory</jndi-name>
> <xa-transaction/>
> <track-connection-by-tx/>
> <rar-name>activemq-rar-5.0.0.14-fuse.rar</rar-name>
> <connection-definition>javax.jms.QueueConnectionFactory</connection-definition>
> <ServerUrl>tcp://<host>:61616?wireFormat.maxInactivityDuration=0&keepAlive=true</ServerUrl>
> <!--
> <UserName>sa</UserName>
> <Password></Password>
> -->
> <min-pool-size>2</min-pool-size>
> <max-pool-size>200</max-pool-size>
> <blocking-timeout-millis>30000</blocking-timeout-millis>
> <idle-timeout-minutes>1440</idle-timeout-minutes>
> </tx-connection-factory>
> <tx-connection-factory>
> <jndi-name>activemq/TopicConnectionFactory</jndi-name>
> <xa-transaction/>
> <track-connection-by-tx/>
> <rar-name>activemq-rar-5.0.0.14-fuse.rar</rar-name>
> <connection-definition>javax.jms.TopicConnectionFactory</connection-definition>
> <ServerUrl>tcp://<host>:61616?wireFormat.maxInactivityDuration=0&keepAlive=true</ServerUrl>
> <!--
> <UserName>sa</UserName>
> <Password></Password>
> -->
> <min-pool-size>2</min-pool-size>
> <max-pool-size>200</max-pool-size>
> <blocking-timeout-millis>30000</blocking-timeout-millis>
> <idle-timeout-minutes>1440</idle-timeout-minutes>
> </tx-connection-factory>
>
> ....
> </connection-factories>
> 22:59:21,007 WARN [ActiveMQManagedConnection] Connection failed: javax.jms.JMSException: java.io.EOFException
> 22:59:21,009 WARN [TxConnectionManager] Connection error occured: org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener@1c3dfe[state=NORMAL mc=org.apache.activemq.ra.ActiveMQManagedConnection@1ff0bb4 handles=1 lastUse=1231786631511 permit=true trackByTx=false mcp=org.jboss.resource.connectionmanager.JBossManagedConnectionPool$OnePool@1a83509 context=org.jboss.resource.connectionmanager.InternalManagedConnectionPool@321810 xaResource=org.apache.activemq.ra.ActiveMQManagedConnection$1@159773f txSync=null]
> javax.jms.JMSException: java.io.EOFException
> at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:49)
> at org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1684)
> at org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1701)
> at org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:99)
> at org.apache.activemq.transport.ResponseCorrelator.onException(ResponseCorrelator.java:114)
> at org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:99)
> at org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:99)
> at org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:152)
> at org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:244)
> at org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:96)
> at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:187)
> at java.lang.Thread.run(Thread.java:595)
> Caused by: java.io.EOFException
> at java.io.DataInputStream.readInt(DataInputStream.java:358)
> at org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:269)
> at org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:203)
> at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:195)
> at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:183)
> ... 1 more
> 23:01:27,933 ERROR [ProductManager] End of a batch (2199 s, 0.227/sec). No failures out of 500 products processed. Attempt 0 of 1
> 23:01:27,934 WARN [BatchSink] Message (Product/addOrUpdate, x500), batch [258] on port ABC processing STOPPED
> 23:01:27,936 INFO [AdvisoryConsumer] Failed to send remove command: javax.jms.JMSException: Channel was inactive for too long: <host>/<ipaddress>:61616
> javax.jms.JMSException: Channel was inactive for too long: <host>/<ipaddress>:61616
> at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:62)
> at org.apache.activemq.ActiveMQConnection.doAsyncSendPacket(ActiveMQConnection.java:1178)
> at org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1170)
> at org.apache.activemq.AdvisoryConsumer.dispose(AdvisoryConsumer.java:56)
> at org.apache.activemq.ActiveMQConnection.cleanup(ActiveMQConnection.java:1353)
> at org.apache.activemq.ra.ActiveMQManagedConnection.cleanup(ActiveMQManagedConnection.java:250)
> at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.returnConnection(InternalManagedConnectionPool.java:320)
> at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.returnConnection(JBossManagedConnectionPool.java:620)
> at org.jboss.resource.connectionmanager.BaseConnectionManager2.returnManagedConnection(BaseConnectionManager2.java:363)
> at org.jboss.resource.connectionmanager.BaseConnectionManager2$BaseConnectionEventListener.connectionErrorOccurred(BaseConnectionManager2.java:756)
> at org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener.connectionErrorOccurred(TxConnectionManager.java:676)
> at org.apache.activemq.ra.ActiveMQManagedConnection.fireErrorOccurredEvent(ActiveMQManagedConnection.java:189)
> at org.apache.activemq.ra.ActiveMQManagedConnection.onException(ActiveMQManagedConnection.java:408)
> at org.apache.activemq.ActiveMQConnection$3.run(ActiveMQConnection.java:1690)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
> at java.lang.Thread.run(Thread.java:595)
> Caused by: org.apache.activemq.transport.InactivityIOException: Channel was inactive for too long: <host>/<ipaddress>:61616
> at org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:225)
> at org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:83)
> at org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:100)
> at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40)
> at org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
> at org.apache.activemq.ActiveMQConnection.doAsyncSendPacket(ActiveMQConnection.java:1176)
> ... 15 more
> 23:01:27,939 WARN [JBossManagedConnectionPool] ResourceException cleaning up ManagedConnection: org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener@1c3dfe[state=NORMAL mc=org.apache.activemq.ra.ActiveMQManagedConnection@1ff0bb4 handles=0 lastUse=1231786631511 permit=true trackByTx=false mcp=org.jboss.resource.connectionmanager.JBossManagedConnectionPool$OnePool@1a83509 context=org.jboss.resource.connectionmanager.InternalManagedConnectionPool@321810 xaResource=org.apache.activemq.ra.ActiveMQManagedConnection$1@159773f txSync=null]
> javax.resource.ResourceException: Could cleanup the ActiveMQ connection: javax.jms.JMSException: Channel was inactive for too long: <host>/<ipaddress>:61616
> at org.apache.activemq.ra.ActiveMQManagedConnection.cleanup(ActiveMQManagedConnection.java:252)
> at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.returnConnection(InternalManagedConnectionPool.java:320)
> at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.returnConnection(JBossManagedConnectionPool.java:620)
> at org.jboss.resource.connectionmanager.BaseConnectionManager2.returnManagedConnection(BaseConnectionManager2.java:363)
> at org.jboss.resource.connectionmanager.BaseConnectionManager2$BaseConnectionEventListener.connectionErrorOccurred(BaseConnectionManager2.java:756)
> at org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener.connectionErrorOccurred(TxConnectionManager.java:676)
> at org.apache.activemq.ra.ActiveMQManagedConnection.fireErrorOccurredEvent(ActiveMQManagedConnection.java:189)
> at org.apache.activemq.ra.ActiveMQManagedConnection.onException(ActiveMQManagedConnection.java:408)
> at org.apache.activemq.ActiveMQConnection$3.run(ActiveMQConnection.java:1690)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
> at java.lang.Thread.run(Thread.java:595)
> Caused by: javax.jms.JMSException: Channel was inactive for too long: <host>/<ipaddress>:61616
> at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:62)
> at org.apache.activemq.ActiveMQConnection.doAsyncSendPacket(ActiveMQConnection.java:1178)
> at org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1170)
> at org.apache.activemq.ActiveMQConnection.cleanup(ActiveMQConnection.java:1376)
> at org.apache.activemq.ra.ActiveMQManagedConnection.cleanup(ActiveMQManagedConnection.java:250)
> ... 11 more
> Caused by: org.apache.activemq.transport.InactivityIOException: Channel was inactive for too long: <host>/<ipaddress>:61616
> at org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:225)
> at org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:83)
> at org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:100)
> at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40)
> at org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
> at org.apache.activemq.ActiveMQConnection.doAsyncSendPacket(ActiveMQConnection.java:1176)
> ... 14 more
> 23:01:27,945 WARN [ActiveMQManagedConnection] Connection failed: javax.jms.JMSException: Channel was inactive for too long: <host>/<ipaddress>:61616
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira