[mule-user] Mule & External ActiveMQ & XA - 100% CPU Usage when ActiveMQ Server is brought down

1 view
Skip to first unread message

Nandakumar Devi

unread,
Apr 11, 2007, 9:56:36 AM4/11/07
to us...@mule.codehaus.org
Hi,
 
I am using Mule 1.3.2 and ActiveMQ 4.1.0.
 
The JmsConnector is configured as follows:
 
mule-config.xml
---------------
    <connector name="jmsConnector-xa" className="org.mule.providers.jms.JmsConnector">
        <properties>
            <container-property name="connectionFactory"
                                reference="activeMQXAConnectionFactory"/>
            <property name="specification" value="1.1"/>
        </properties>
    </connector>
 
application-context.xml
-----------------------
    <bean id="activeMQXAConnectionFactory" class="org.apache.activemq.ActiveMQXAConnectionFactory">
        <property name="brokerURL" value="tcp://localhost:61616"/>
        <property name="redeliveryPolicy" ref="redeliveryPolicy"/>
    </bean>
 
    <bean id="redeliveryPolicy" class="org.apache.activemq.RedeliveryPolicy">
        <property name="initialRedeliveryDelay" value="5000"/>
        <property name="maximumRedeliveries" value="3"/>
        <property name="useExponentialBackOff" value="true"/>
        <property name="backOffMultiplier" value="2"/>
    </bean>
 
When I bring down my ActiveMQ instance, the CPU usage shoots up to 100% and the log file is flooded with the following exception:
 
ERROR org.mule.impl.DefaultExceptionStrategy :
********************************************************************************
Message               : Initialisation Failure: The transport is not running.
Type                  : org.mule.providers.ConnectException
Code                  : MULE_ERROR-84
JMS Code              : null
JavaDoc               :
http://mule.codehaus.org/docs/apidocs/org/mule/providers/ConnectException.html
Object                : org.mule.providers.jms.TransactedJmsMessageReceiver@140b8fd
********************************************************************************
Exception stack is:
1. The transport is not running. (java.io.IOException)
  org.apache.activemq.transport.TransportSupport:103 (
http://java.sun.com/j2se/1.5.0/docs/api/java/io/IOException.html)
2. The transport is not running.(JMS Code: null) (javax.jms.JMSException)
  org.apache.activemq.util.JMSExceptionSupport:58 (
http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/jms/JMSException.html)
3. Initialisation Failure: The transport is not running. (org.mule.providers.ConnectException)
  org.mule.providers.jms.TransactedJmsMessageReceiver:340 (
http://mule.codehaus.org/docs/apidocs/org/mule/providers/ConnectException.html)
********************************************************************************
Root Exception stack trace:
java.io.IOException: The transport is not running.
 at org.apache.activemq.transport.TransportSupport.checkStarted(TransportSupport.java:103)
 at org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:117)
 at org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:141)
 at org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:80)
 at org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:93)
 at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:43)
 at org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
 at org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1151)
 at org.apache.activemq.ActiveMQSession.<init>(ActiveMQSession.java:226)
 at org.apache.activemq.ActiveMQSession.<init>(ActiveMQSession.java:234)
 at org.apache.activemq.ActiveMQXASession.<init>(ActiveMQXASession.java:69)
 at org.apache.activemq.ActiveMQXAConnection.createSession(ActiveMQXAConnection.java:73)
 at org.apache.activemq.ActiveMQXAConnection.createXASession(ActiveMQXAConnection.java:59)
 at org.mule.providers.jms.xa.ConnectionFactoryWrapper$ConnectionInvocationHandler.invoke(ConnectionFactoryWrapper.java:171)
 at $Proxy13.createSession(Unknown Source)
 at org.mule.providers.jms.Jms11Support.createSession(Jms11Support.java:74)
 at org.mule.providers.jms.JmsConnector.getSession(JmsConnector.java:435)
 at org.mule.providers.jms.JmsConnector.getSession(JmsConnector.java:651)
 at org.mule.providers.jms.TransactedJmsMessageReceiver.createConsumer(TransactedJmsMessageReceiver.java:297)
 at org.mule.providers.jms.TransactedJmsMessageReceiver.poll(TransactedJmsMessageReceiver.java:150)
 at org.mule.providers.PollingMessageReceiver.run(PollingMessageReceiver.java:71)
 at org.mule.impl.work.WorkerContext.run(WorkerContext.java:317)
 at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:987)
 at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:528)
 at java.lang.Thread.run(Thread.java:595)
 
********************************************************************************
 
In addition to this I get the following exception once:
Exception in thread "ActiveMQ Transport: tcp://localhost/127.0.0.1:61616" java.lang.ClassCastException: org.apache.activemq.transport.InactivityMonitor$1
 at edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.compareTo(ScheduledThreadPoolExecutor.java:189)
 at edu.emory.mathcs.backport.java.util.PriorityQueue.remove(PriorityQueue.java:507)
 at edu.emory.mathcs.backport.java.util.concurrent.DelayQueue.remove(DelayQueue.java:379)
 at edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.remove(ScheduledThreadPoolExecutor.java:707)
 at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.remove(ThreadPoolExecutor.java:1582)
 at org.apache.activemq.thread.Scheduler.cancel(Scheduler.java:55)
 at org.apache.activemq.transport.InactivityMonitor.stopMonitorThreads(InactivityMonitor.java:176)
 at org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:149)
 at org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:97)
 at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:150)
 at java.lang.Thread.run(Thread.java:595)
 
Regards,
Nanda
Any comments or statements made in this email are not necessarily those of Tavant Technologies. The information transmitted is intended only for the 
person or entity to which it is addressed and may contain confidential and/or privileged material. If you have received this in error, please contact 
the sender and delete the material from any computer. All e-mails sent from or to Tavant Technologies. may be subject to our monitoring procedures.
Reply all
Reply to author
Forward
0 new messages