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

john edited comment on AMQ-1863 at 8/14/09 6:10 AM:
----------------------------------------------------

You told that the bug has been fixed in 5.1 version. I'm actually using the 5.2 
version and it's still not working... 
Can you confirm that it's really fixed in 5.2 version please?

We are using Mule 2.2 
here is my activemq config  file:

<beans 
  xmlns="http://www.springframework.org/schema/beans";
  xmlns:context="http://www.springframework.org/schema/context";
  xmlns:amq="http://activemq.apache.org/schema/core";
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
  xsi:schemaLocation="
  http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
  http://www.springframework.org/schema/context 
http://www.springframework.org/schema/context/spring-context-2.5.xsd
  http://activemq.apache.org/schema/core 
http://activemq.apache.org/schema/core/activemq-core-5.2.0.xsd";>

  <amq:broker brokerName="amqBroker" useJmx="true" persistent="true">
    
    <amq:persistenceAdapter>
      <amq:kahaPersistenceAdapter directory="activemq-data" 
maxDataFileLength="33554432" />
    </amq:persistenceAdapter>
    
    <amq:transportConnectors>
      <amq:transportConnector  
uri="tcp://localhost:61616?jms.watchTopicAdvisories=false" />
    </amq:transportConnectors>
  </amq:broker> 
  
</beans>


Here is the stack trace with activemq 4.1 :

Caused by: org.apache.activemq.transport.InactivityIOException: Channel was 
inactive for too long.
 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:442)
 at 
edu.emory.mathcs.backport.java.util.concurrent.FutureTask.runAndReset(FutureTask.java:200)
 at 
edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:151)
 at 
edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:263)


Here is the stack trace with activemq 5.2 :

Caused by: org.apache.activemq.transport.InactivityIOException: Channel was 
inactive for too long: localhost/127.0.0.1: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)


thanks a lot for your response.

  John


      was (Author: activemq_user):
    You told that the bug has been fixed in 5.1 version. I'm actually using the 
5.2 version and it's still not working... 
Can you confirm that it's really fixed in 5.2 version please?

here is my activemq config  file:

<beans 
  xmlns="http://www.springframework.org/schema/beans";
  xmlns:context="http://www.springframework.org/schema/context";
  xmlns:amq="http://activemq.apache.org/schema/core";
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
  xsi:schemaLocation="
  http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
  http://www.springframework.org/schema/context 
http://www.springframework.org/schema/context/spring-context-2.5.xsd
  http://activemq.apache.org/schema/core 
http://activemq.apache.org/schema/core/activemq-core-5.2.0.xsd";>

  <amq:broker brokerName="amqBroker" useJmx="true" persistent="true">
    
    <amq:persistenceAdapter>
      <amq:kahaPersistenceAdapter directory="activemq-data" 
maxDataFileLength="33554432" />
    </amq:persistenceAdapter>
    
    <amq:transportConnectors>
      <amq:transportConnector  
uri="tcp://localhost:61616?jms.watchTopicAdvisories=false" />
    </amq:transportConnectors>
  </amq:broker> 
  
</beans>


Here is the stack trace :

ERROR 2009-08-07 14:08:17,885 [jmsConnector.dispatcher.42] 
org.mule.DefaultExceptionStrategy: Caught exception in Exception Strategy: 
Channel was inactive for too long: localhost/127.0.0.1:61616
javax.jms.JMSException: Channel was inactive for too long: 
localhost/127.0.0.1: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.ActiveMQSession.<init>(ActiveMQSession.java:198)
    at 
org.apache.activemq.ActiveMQConnection.createSession(ActiveMQConnection.java:302)
    at org.mule.transport.jms.Jms11Support.createSession(Jms11Support.java:77)
    at org.mule.transport.jms.JmsConnector.getSession(JmsConnector.java:579)
    at org.mule.transport.jms.JmsConnector.getSession(JmsConnector.java:558)
    at 
org.mule.transport.jms.JmsMessageDispatcher.dispatchMessage(JmsMessageDispatcher.java:135)
    at 
org.mule.transport.jms.JmsMessageDispatcher.doDispatch(JmsMessageDispatcher.java:72)
    at 
org.mule.transport.AbstractMessageDispatcher$Worker.run(AbstractMessageDispatcher.java:262)
    at org.mule.work.WorkerContext.run(WorkerContext.java:310)
    at 
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
    at 
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
    at java.lang.Thread.run(Unknown Source)
Caused by: org.apache.activemq.transport.InactivityIOException: Channel was 
inactive for too long: localhost/127.0.0.1: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)
    ... 13 more


thanks a lot for your response.

  John

  
> org.apache.activemq.transport.InactivityIOException: Channel was inactive for 
> too long
> --------------------------------------------------------------------------------------
>
>                 Key: AMQ-1863
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1863
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 4.0.2
>         Environment: RedHat Linux
>            Reporter: don ingratta
>            Assignee: Rob Davies
>             Fix For: 5.1.0
>
>         Attachments: activemq.xml
>
>
> I have web client which uses jetty configured through servicemix which 
> intermittently throws an activemq.transport.InactivityIOException. The 
> problem is reported in a solaris environment and I have been able to 
> reproduce this issue with Redhat Linux AdvancedServer 2.1 after an extended 
> period of no web client activity for about 2 days.
> I have tried setting maxInactivityDuration = 0 (at the web client end) and 
> have also tried applying the patch (changes to 
> Transport.InactivityMonitor.java) mentioned in AMQ-1146 to 4.0.2 but the 
> issue still occurs.
> It appears that this issue has been ongoing as there are similar issues 
> resolved in 5.1.
> Is this issue resolved in 4.1 or must I upgrade to 5.1 to resolve this issue?
> Below is exception message from the servicemix.log and the activemq.xml 
> confguration file is attached.
> 15:25:19,414 | WARN  | btpool0-10922 | jetty                    | 
> ervicemix.http.jetty.JCLLogger   93 | /ecli/: 
> java.lang.Exception: org.springframework.jms.UncategorizedJmsException: 
> Uncategorized exception occured during JMS processing; nested exception is 
> org.apache.activemq.ConnectionFailedException: The JMS connection has failed: 
> Channel was inactive for too long.; nested exception is 
> org.apache.activemq.transport.InactivityIOException: Channel was inactive for 
> too long.
>       at 
> org.apache.servicemix.http.processors.ConsumerProcessor.process(ConsumerProcessor.java:202)
>       at 
> org.apache.servicemix.http.HttpBridgeServlet.doPost(HttpBridgeServlet.java:71)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:615)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
>       at 
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:443)
>       at 
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:356)
>       at 
> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:179)
>       at 
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:615)
>       at 
> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:149)
>       at 
> org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:123)
>       at 
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:141)
>       at org.mortbay.jetty.Server.handle(Server.java:269)
>       at 
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:430)
>       at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:333)
>       at 
> org.mortbay.jetty.nio.HttpChannelEndPoint.run(HttpChannelEndPoint.java:270)
>       at 
> org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)
> Caused by: org.springframework.jms.UncategorizedJmsException: Uncategorized 
> exception occured during JMS processing; nested exception is 
> org.apache.activemq.ConnectionFailedException: The JMS connection has failed: 
> Channel was inactive for too long.; nested exception is 
> org.apache.activemq.transport.InactivityIOException: Channel was inactive for 
> too long.
>       at 
> org.springframework.jms.support.JmsUtils.convertJmsAccessException(JmsUtils.java:194)
>       at 
> org.springframework.jms.support.JmsAccessor.convertJmsAccessException(JmsAccessor.java:162)
>       at 
> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:432)
>       at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:485)
>       at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:471)
>       at 
> org.apache.servicemix.components.jms.JmsSenderComponent.process(JmsSenderComponent.java:81)
>       at 
> org.apache.servicemix.components.util.OutBinding.onMessageExchange(OutBinding.java:49)
>       at 
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:624)
>       at 
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:169)
>       at 
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:177)
>       at 
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:227)
>       at 
> org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:291)
>       at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown 
> Source)
>       at java.lang.Thread.run(Unknown Source)
> Caused by: org.apache.activemq.ConnectionFailedException: The JMS connection 
> has failed: Channel was inactive for too long.
>       at 
> org.apache.activemq.ActiveMQConnection.checkClosedOrFailed(ActiveMQConnection.java:1171)
>       at 
> org.apache.activemq.ActiveMQConnection.createSession(ActiveMQConnection.java:270)
>       at 
> org.apache.activemq.pool.SessionPool.createSession(SessionPool.java:112)
>       at org.apache.activemq.pool.SessionPool.makeObject(SessionPool.java:80)
>       at 
> org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:771)
>       at 
> org.apache.activemq.pool.SessionPool.borrowSession(SessionPool.java:55)
>       at 
> org.apache.activemq.pool.ConnectionPool.createSession(ConnectionPool.java:70)
>       at 
> org.apache.activemq.pool.PooledConnection.createSession(PooledConnection.java:129)
>       at 
> org.springframework.jms.core.JmsTemplate.createSession(JmsTemplate.java:826)
>       at 
> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:420)
>       ... 11 more
> Caused by: org.apache.activemq.transport.InactivityIOException: Channel was 
> inactive for too long.
>       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)
>       ... 1 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to