Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-4105

InactivityIOException exception leading to ServiceMix not functioning

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Incomplete
    • 5.4.2
    • AGING_TO_DIE
    • Broker
    • None
    • OS: SunOS 5.10 Generic_147440-23 sun4v sparc SUNW,Netra-T5440
      HW: Sun sparc Netra T5440
      ActiveMq version: 5.4.2
      ServiceMix version: 4.3.0
      Java version: 1.5.0_32

    Description

      We are using ActiveMQ broker with ServiceMix and have observed following InactivityIOException being reported in ServiceMix logs and ActiveMq closes MessageProducer and MessageComsumer. Then JMS related activemq.ConnectionFailedExceptions are observed and the ServiceMix stops functioning and clients are not able to register for topics and get any data from ServiceMix.

      Transport failed: org.apache.activemq.transport.InactivityIOException: Channel was inactive for too (>30000) long: /127.0.0.1:44650

      Based on the information provided in forum, we have tried to disable Inactivity Monitor in the ActiveMq-broker.xml file available in ServiceMix/etc directory, however Inactivity monitor is not changed from default value of 30000.

      ActiveMq-broker.xml from our setup:

      <broker>
      <!-- The transport connectors ActiveMQ will listen to -->
      <transportConnectors>
      <transportConnector name="openwire" uri="tcp://localhost:61616?wireFormat.maxInactivityDuration=0"/>
      <transportConnector name="stomp" uri="stomp://localhost:61613"/>
      </transportConnectors>

      </broker>

      Please let us know what has caused InactivityTimeout exception and how to reproduce this issue and how this issue will be resolved.

      ServiceMix Logs:

      [2012-10-09 03:26:24,964] | INFO | InactivityMonitor Async Task: java.util.concurrent.ThreadPoolExecutor$Worker@49754b | Transport | emq.broker.TransportConnection 238 | Transport failed: org.apache.activemq.transport.InactivityIOException: Channel was inactive for too (>30000) long: /127.0.0.1:44650
      [2012-10-09 03:26:25,306] | INFO | ActiveMQ Transport: tcp:///127.0.0.1:44705 | Transport | emq.broker.TransportConnection 238 | Transport failed: java.io.EOFException
      [2012-10-09 03:26:26,443] | WARN | pool-component.servicemix-wsn2005.provider-thread-36 | JmsPublisher | ervicemix.wsn.jms.JmsPublisher 97 | Error dispatching message
      javax.jms.IllegalStateException: The producer is closed
      at org.apache.activemq.ActiveMQMessageProducer.checkClosed(ActiveMQMessageProducer.java:169)
      at org.apache.activemq.ActiveMQMessageProducerSupport.getDeliveryMode(ActiveMQMessageProducerSupport.java:148)
      at org.apache.activemq.pool.PooledProducer.<init>(PooledProducer.java:44)
      at org.apache.activemq.pool.PooledSession.createProducer(PooledSession.java:278)
      at org.apache.servicemix.wsn.jms.JmsPublisher.notify(JmsPublisher.java:89)[166:servicemix-wsn2005:2011.01.0]
      at org.apache.servicemix.wsn.AbstractNotificationBroker.handleNotify(AbstractNotificationBroker.java:134)[166:servicemix-wsn2005:2011.01.0]
      at org.apache.servicemix.wsn.AbstractNotificationBroker.notify(AbstractNotificationBroker.java:126)[166:servicemix-wsn2005:2011.01.0]
      at sun.reflect.GeneratedMethodAccessor38.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)[:1.6.0_33]
      at java.lang.reflect.Method.invoke(Unknown Source)[:1.6.0_33]
      at org.apache.servicemix.wsn.component.WSNEndpoint.process(WSNEndpoint.java:166)[166:servicemix-wsn2005:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:651)[121:servicemix-common:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:606)[121:servicemix-common:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchangeInTx(AsyncBaseLifeCycle.java:501)[121:servicemix-common:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle$2.run(AsyncBaseLifeCycle.java:370)[121:servicemix-common:2011.01.0]
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)[:1.6.0_33]
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)[:1.6.0_33]
      at java.lang.Thread.run(Unknown Source)[:1.6.0_33]
      [2012-10-09 03:26:26,631] | INFO | pool-component.servicemix-wsn2005.provider-thread-37 | JmsPullPoint | ervicemix.wsn.jms.JmsPullPoint 125 | Error retrieving messages
      javax.jms.IllegalStateException: The Consumer is closed
      at org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:791)
      at org.apache.activemq.ActiveMQMessageConsumer.receiveNoWait(ActiveMQMessageConsumer.java:600)
      at org.apache.servicemix.wsn.jms.JmsPullPoint.getMessages(JmsPullPoint.java:114)[166:servicemix-wsn2005:2011.01.0]
      at org.apache.servicemix.wsn.AbstractPullPoint.getMessages(AbstractPullPoint.java:92)[166:servicemix-wsn2005:2011.01.0]
      at sun.reflect.GeneratedMethodAccessor39.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)[:1.6.0_33]
      at java.lang.reflect.Method.invoke(Unknown Source)[:1.6.0_33]
      at org.apache.servicemix.wsn.component.WSNEndpoint.process(WSNEndpoint.java:166)[166:servicemix-wsn2005:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:651)[121:servicemix-common:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:606)[121:servicemix-common:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchangeInTx(AsyncBaseLifeCycle.java:501)[121:servicemix-common:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle$2.run(AsyncBaseLifeCycle.java:370)[121:servicemix-common:2011.01.0]
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)[:1.6.0_33]
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)[:1.6.0_33]
      at java.lang.Thread.run(Unknown Source)[:1.6.0_33]
      [2012-10-09 03:26:26,678] | WARN | pool-component.servicemix-wsn2005.provider-thread-38 | JmsPublisher | ervicemix.wsn.jms.JmsPublisher 97 | Error dispatching message
      javax.jms.IllegalStateException: The producer is closed
      at org.apache.activemq.ActiveMQMessageProducer.checkClosed(ActiveMQMessageProducer.java:169)
      at org.apache.activemq.ActiveMQMessageProducerSupport.getDeliveryMode(ActiveMQMessageProducerSupport.java:148)
      at org.apache.activemq.pool.PooledProducer.<init>(PooledProducer.java:44)
      at org.apache.activemq.pool.PooledSession.createProducer(PooledSession.java:278)
      at org.apache.servicemix.wsn.jms.JmsPublisher.notify(JmsPublisher.java:89)[166:servicemix-wsn2005:2011.01.0]
      at org.apache.servicemix.wsn.AbstractNotificationBroker.handleNotify(AbstractNotificationBroker.java:134)[166:servicemix-wsn2005:2011.01.0]
      at org.apache.servicemix.wsn.AbstractNotificationBroker.notify(AbstractNotificationBroker.java:126)[166:servicemix-wsn2005:2011.01.0]
      at sun.reflect.GeneratedMethodAccessor38.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)[:1.6.0_33]
      at java.lang.reflect.Method.invoke(Unknown Source)[:1.6.0_33]
      at org.apache.servicemix.wsn.component.WSNEndpoint.process(WSNEndpoint.java:166)[166:servicemix-wsn2005:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:651)[121:servicemix-common:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:606)[121:servicemix-common:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchangeInTx(AsyncBaseLifeCycle.java:501)[121:servicemix-common:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle$2.run(AsyncBaseLifeCycle.java:370)[121:servicemix-common:2011.01.0]
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)[:1.6.0_33]
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)[:1.6.0_33]
      at java.lang.Thread.run(Unknown Source)[:1.6.0_33]
      [2012-10-09 03:26:26,788] | WARN | pool-component.servicemix-wsn2005.provider-thread-39 | JmsPublisher | ervicemix.wsn.jms.JmsPublisher 97 | Error dispatching message
      org.apache.activemq.ConnectionFailedException: The JMS connection has failed: java.io.EOFException
      at org.apache.activemq.ActiveMQConnection.checkClosedOrFailed(ActiveMQConnection.java:1354)
      at org.apache.activemq.ActiveMQConnection.createSession(ActiveMQConnection.java:308)
      at org.apache.activemq.pool.SessionPool.createSession(SessionPool.java:117)
      at org.apache.activemq.pool.SessionPool.makeObject(SessionPool.java:85)
      at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1148)
      at org.apache.activemq.pool.SessionPool.borrowSession(SessionPool.java:54)
      at org.apache.activemq.pool.ConnectionPool.createSession(ConnectionPool.java:110)
      at org.apache.activemq.pool.PooledConnection.createSession(PooledConnection.java:141)
      at org.apache.servicemix.wsn.jms.JmsPublisher.notify(JmsPublisher.java:88)[166:servicemix-wsn2005:2011.01.0]
      at org.apache.servicemix.wsn.AbstractNotificationBroker.handleNotify(AbstractNotificationBroker.java:134)[166:servicemix-wsn2005:2011.01.0]
      at org.apache.servicemix.wsn.AbstractNotificationBroker.notify(AbstractNotificationBroker.java:126)[166:servicemix-wsn2005:2011.01.0]
      at sun.reflect.GeneratedMethodAccessor38.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)[:1.6.0_33]
      at java.lang.reflect.Method.invoke(Unknown Source)[:1.6.0_33]
      at org.apache.servicemix.wsn.component.WSNEndpoint.process(WSNEndpoint.java:166)[166:servicemix-wsn2005:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:651)[121:servicemix-common:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:606)[121:servicemix-common:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchangeInTx(AsyncBaseLifeCycle.java:501)[121:servicemix-common:2011.01.0]
      at org.apache.servicemix.common.AsyncBaseLifeCycle$2.run(AsyncBaseLifeCycle.java:370)[121:servicemix-common:2011.01.0]
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)[:1.6.0_33]
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)[:1.6.0_33]
      at java.lang.Thread.run(Unknown Source)[:1.6.0_33]
      Caused by: java.io.EOFException
      at java.io.DataInputStream.readInt(Unknown Source)[:1.6.0_33]
      at org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:269)[43:org.apache.activemq.activemq-core:5.4.2]
      at org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:227)[43:org.apache.activemq.activemq-core:5.4.2]
      at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:219)[43:org.apache.activemq.activemq-core:5.4.2]
      at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:202)[43:org.apache.activemq.activemq-core:5.4.2]
      ... 1 more

      Attachments

        1. servicemix.log.zip
          535 kB
          Mithun Sunku

        Activity

          People

            Unassigned Unassigned
            mithun_s Mithun Sunku
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: