activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Hurst (JIRA)" <j...@apache.org>
Subject [jira] Commented: (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.
Date Sun, 22 Mar 2009 08:54:43 GMT

    [ https://issues.apache.org/activemq/browse/AMQ-2067?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=50729#action_50729
] 

Andrew Hurst commented on AMQ-2067:
-----------------------------------

Hi,

i also got this error however I am using activemq 5.2 with camel 1.6. My application was running
for about a day and a half

2009-03-22 05:51:30,582 [                      Thread-0] AdvisoryConsumer               INFO
 Failed to send remove command: javax.jms.JMSException: Channel was inactive for too long:
berin
t/192.168.222.34:61616
javax.jms.JMSException: Channel was inactive for too long: berint/192.168.222.34:61616
        at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:62)
        at org.apache.activemq.ActiveMQConnection.doAsyncSendPacket(ActiveMQConnection.java:1216)
        at org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1208)
        at org.apache.activemq.AdvisoryConsumer.dispose(AdvisoryConsumer.java:56)
        at org.apache.activemq.ActiveMQConnection.close(ActiveMQConnection.java:599)
        at org.apache.activemq.pool.ConnectionPool.close(ConnectionPool.java:126)
        at org.apache.activemq.pool.ConnectionPool.expiredCheck(ConnectionPool.java:164)
        at org.apache.activemq.pool.ConnectionPool.decrementReferenceCount(ConnectionPool.java:144)
        at org.apache.activemq.pool.PooledConnection.close(PooledConnection.java:71)
        at org.springframework.jms.connection.ConnectionFactoryUtils.releaseConnection(ConnectionFactoryUtils.java:81)
        at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:478)
        at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:548)
        at org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:227)
        at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncProcessorTypeConverter.java:43)
        at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
        at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:63)
        at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:172)
        at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:93)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:115)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:89)
        at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:63)
        at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:47)
        at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
        at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
        at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:47)
        at org.apache.camel.impl.ProducerCache.sendExchange(ProducerCache.java:151)
        at org.apache.camel.impl.ProducerCache.send(ProducerCache.java:88)
        at org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:85)
        at org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:102)
        at org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:108)
        at com.ee.eventgenerator.FlightManager.processArtificialEvents(FlightManager.java:586)
        at com.ee.eventgenerator.FlightsScanner.run(FlightsScanner.java:213)
        at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.activemq.transport.InactivityIOException: Channel was inactive for too
long: berint/192.168.222.34: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:1214)
        ... 31 more

The application does not recover and a restart is required

> 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/activemq/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
>            Priority: Blocker
>
> 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&amp;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&amp;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.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message