Hi again,
One additional note, i was only using JCA on the consumer so i though it
might be some pooling issue on the producer side which made it non thread
safe. I added an outbound JCA adapter on the producer, but still got a
deadlock with a slight diffrent thread dump:
Found one Java-level deadlock:
=============================
"Thread-42":
waiting to lock monitor 0x00a6b3dc (object 0x23561170, a
java.lang.Object),
which is held by "http-8080-Processor19"
"http-8080-Processor19":
waiting to lock monitor 0x00a6b23c (object 0x2355f438, a
java.lang.Object),
which is held by "Thread-42"
Java stack information for the threads listed above:
===================================================
"Thread-42":
at
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:44)
- waiting to lock <0x23561170> (a java.lang.Object)
at
org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:59)
at
org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:215)
at
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:63)
at
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:92)
at
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:67)
at
org.apache.activemq.transport.vm.VMTransport.oneway(VMTransport.java:77)
at
org.apache.activemq.transport.MarshallingTransportFilter.oneway(MarshallingTransportFilter.java:37)
at
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:45)
- locked <0x2355f438> (a java.lang.Object)
at
org.apache.activemq.transport.ResponseCorrelator.asyncRequest(ResponseCorrelator.java:67)
at
org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:72)
at
org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1115)
at
org.apache.activemq.TransactionContext.commit(TransactionContext.java:260)
at
org.apache.activemq.ra.LocalAndXATransaction.commit(LocalAndXATransaction.java:57)
at
org.jencks.LocalTransactionEndpoint.afterDelivery(LocalTransactionEndpoint.java:52)
at
org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.afterDelivery(MessageEndpointProxy.java:130)
at
org.apache.activemq.ra.MessageEndpointProxy.afterDelivery(MessageEndpointProxy.java:64)
at
org.apache.activemq.ra.ServerSessionImpl.afterDelivery(ServerSessionImpl.java:214)
at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:752)
at
org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:163)
- locked <0x23704330> (a org.apache.activemq.ra.ServerSessionImpl)
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(Thread.java:595)
"http-8080-Processor19":
at
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:44)
- waiting to lock <0x2355f438> (a java.lang.Object)
at
org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:59)
at
org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1095)
at
org.apache.activemq.ActiveMQSession.<init>(ActiveMQSession.java:228)
at
org.apache.activemq.ActiveMQConnection.createSession(ActiveMQConnection.java:275)
at
org.apache.activemq.ra.ServerSessionPoolImpl.createServerSessionImpl(ServerSessionPoolImpl.java:60)
at
org.apache.activemq.ra.ServerSessionPoolImpl.getServerSession(ServerSessionPoolImpl.java:112)
- locked <0x2355f500> (a
org.apache.activemq.ra.ServerSessionPoolImpl)
at
org.apache.activemq.ActiveMQConnectionConsumer.dispatch(ActiveMQConnectionConsumer.java:136)
at
org.apache.activemq.ActiveMQConnection.onCommand(ActiveMQConnection.java:1407)
at
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:92)
at
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:67)
at
org.apache.activemq.transport.MarshallingTransportFilter.onCommand(MarshallingTransportFilter.java:42)
at
org.apache.activemq.transport.vm.VMTransport.oneway(VMTransport.java:77)
at
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:45)
- locked <0x23561170> (a java.lang.Object)
at
org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:59)
at
org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:215)
at
org.apache.activemq.broker.AbstractConnection.processDispatch(AbstractConnection.java:722)
at
org.apache.activemq.broker.AbstractConnection.dispatchSync(AbstractConnection.java:699)
at
org.apache.activemq.broker.region.TopicSubscription.dispatch(TopicSubscription.java:319)
at
org.apache.activemq.broker.region.TopicSubscription.add(TopicSubscription.java:78)
at
org.apache.activemq.broker.region.policy.SimpleDispatchPolicy.dispatch(SimpleDispatchPolicy.java:51)
at org.apache.activemq.broker.region.Topic.dispatch(Topic.java:444)
at org.apache.activemq.broker.region.Topic.send(Topic.java:255)
at
org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:226)
at
org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:349)
at
org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:193)
at
org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:114)
at
org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:98)
at
org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:127)
at
org.apache.activemq.broker.AbstractConnection.processMessage(AbstractConnection.java:433)
at
org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:591)
at
org.apache.activemq.broker.AbstractConnection.service(AbstractConnection.java:237)
at
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:61)
at
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:92)
at
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:67)
at
org.apache.activemq.transport.vm.VMTransport.oneway(VMTransport.java:77)
at
org.apache.activemq.transport.MarshallingTransportFilter.oneway(MarshallingTransportFilter.java:37)
at
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:45)
- locked <0x23257788> (a java.lang.Object)
at
org.apache.activemq.transport.ResponseCorrelator.asyncRequest(ResponseCorrelator.java:67)
at
org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:72)
at
org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1115)
at
org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1557)
at
org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:463)
at
org.logicblaze.lingo.jms.impl.OneWayRequestor.doSend(OneWayRequestor.java:196)
at
org.logicblaze.lingo.jms.impl.MultiplexingRequestor.doSend(MultiplexingRequestor.java:189)
- locked <0x23263a90> (a
org.logicblaze.lingo.jms.impl.MultiplexingRequestor)
at
org.logicblaze.lingo.jms.impl.OneWayRequestor.send(OneWayRequestor.java:101)
at
org.logicblaze.lingo.jms.impl.OneWayRequestor.send(OneWayRequestor.java:97)
at
org.logicblaze.lingo.jms.impl.MultiplexingRequestor.request(MultiplexingRequestor.java:154)
at
org.logicblaze.lingo.jms.JmsClientInterceptor.invoke(JmsClientInterceptor.java:143)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
at
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
at $Proxy0.test(Unknown Source)
at se.ericsson.producer.LingoServlet.doGet(LingoServlet.java:34)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
Found 1 deadlock.
Here's my spring configuration on the producer if that helps:
<?xml version="1.0" encoding="UTF-8"?>
<!-- START SNIPPET: spring -->
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="classpath:global.properties"/>
</bean>
<bean id="transactionContextManager"
class="org.jencks.factory.TransactionContextManagerFactoryBean" />
<bean id="userTransaction"
class="org.jencks.factory.GeronimoTransactionManagerFactoryBean" />
<bean id="transactionManager"
class="org.springframework.transaction.jta.JtaTransactionManager">
<property name="userTransaction" ref="userTransaction" />
</bean>
<bean id="transactionSupport"
class="org.jencks.factory.XATransactionFactoryBean">
<property name="useTransactionCaching" value="true" />
<property name="useThreadCaching" value="true" />
</bean>
<bean id="poolingSupport"
class="org.jencks.factory.SinglePoolFactoryBean">
<property name="maxSize" value="2" />
<property name="minSize" value="1" />
<property name="blockingTimeoutMilliseconds" value="60" />
<property name="idleTimeoutMinutes" value="60" />
<property name="matchOne" value="true" />
<property name="matchAll" value="true" />
<property name="selectOneAssumeMatch" value="true" />
</bean>
<bean id="connectionManager"
class="org.jencks.factory.ConnectionManagerFactoryBean">
<property name="transactionSupport" ref="transactionSupport" />
<property name="poolingSupport" ref="poolingSupport" />
</bean>
<bean id="jmsResourceAdapter"
class="org.apache.activemq.ra.ActiveMQResourceAdapter">
<property name="serverUrl" value="${activemq.brokers}" />
</bean>
<bean id="jmsManagedConnectionFactory"
class="org.apache.activemq.ra.ActiveMQManagedConnectionFactory">
<property name="resourceAdapter" ref="jmsResourceAdapter" />
</bean>
<bean id="jmsConnectionFactory"
class="org.springframework.jca.support.LocalConnectionFactoryBean">
<property name="managedConnectionFactory"
ref="jmsManagedConnectionFactory" />
<property name="connectionManager" ref="connectionManager" />
</bean>
<bean id="client" class="org.logicblaze.lingo.jms.JmsProxyFactoryBean">
<property name="serviceInterface"
value="se.ericsson.consumer.service.ConsumerService" />
<property name="connectionFactory" ref="jmsConnectionFactory" />
<property name="destination" ref="exampleDestination" />
<property name="messageProperties">
<map>
<entry key="EricssonHeader">
<value>bonka</value>
</entry>
</map>
</property>
</bean>
<bean id="exampleDestination"
class="org.apache.activemq.command.ActiveMQTopic">
<constructor-arg index="0" value="ericsson.ConsumerTopic" />
</bean>
</beans>
regards,
-Kristoffer
kristoffer wrote:
>
> Hi,
>
> I have got an deadlock situation in MutexTransport. The usecase is that I
> have a broker, producer and consumer all deployed in separate WARs and the
> communicate over vm:// transport. I have a servelt which creates the
> producer which produces two messages to the same topic, but with different
> message selectors for two consumers. I maybe should mention that i have a
> lingo, jencks, spring combo setup...
>
> Here's the threaddump from the deadlock
>
> Found one Java-level deadlock:
> =============================
> "Thread-44":
> waiting to lock monitor 0x00a6b29c (object 0x234e2f48, a
> java.lang.Object),
> which is held by "http-8080-Processor21"
> "http-8080-Processor21":
> waiting to lock monitor 0x00a6afbc (object 0x23508c88, a
> java.lang.Object),
> which is held by "Thread-44"
>
> Java stack information for the threads listed above:
> ===================================================
> "Thread-44":
> at
> org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:45)
> - waiting to lock <0x234e2f48> (a java.lang.Object)
> at
> org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:59)
> at
> org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:215)
> at
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:63)
> at
> org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:92)
> at
> org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:67)
> at
> org.apache.activemq.transport.vm.VMTransport.oneway(VMTransport.java:77)
> at
> org.apache.activemq.transport.MarshallingTransportFilter.oneway(MarshallingTransportFilter.java:37)
> at
> org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:45)
> - locked <0x23508c88> (a java.lang.Object)
> at
> org.apache.activemq.transport.ResponseCorrelator.asyncRequest(ResponseCorrelator.java:67)
> at
> org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:72)
> at
> org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1115)
> at
> org.apache.activemq.TransactionContext.commit(TransactionContext.java:260)
> at
> org.apache.activemq.ra.LocalAndXATransaction.commit(LocalAndXATransaction.java:57)
> at
> org.jencks.LocalTransactionEndpoint.afterDelivery(LocalTransactionEndpoint.java:52)
> at
> org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.afterDelivery(MessageEndpointProxy.java:130)
> at
> org.apache.activemq.ra.MessageEndpointProxy.afterDelivery(MessageEndpointProxy.java:64)
> at
> org.apache.activemq.ra.ServerSessionImpl.afterDelivery(ServerSessionImpl.java:214)
> at
> org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:752)
> at
> org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:163)
> - locked <0x237b68b0> (a org.apache.activemq.ra.ServerSessionImpl)
> 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(Thread.java:595)
> "http-8080-Processor21":
> at
> org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:45)
> - waiting to lock <0x23508c88> (a java.lang.Object)
> at
> org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:59)
> at
> org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1095)
> at
> org.apache.activemq.ActiveMQSession.<init>(ActiveMQSession.java:228)
> at
> org.apache.activemq.ActiveMQConnection.createSession(ActiveMQConnection.java:275)
> at
> org.apache.activemq.ra.ServerSessionPoolImpl.createServerSessionImpl(ServerSessionPoolImpl.java:60)
> at
> org.apache.activemq.ra.ServerSessionPoolImpl.getServerSession(ServerSessionPoolImpl.java:112)
> - locked <0x234dc7a0> (a
> org.apache.activemq.ra.ServerSessionPoolImpl)
> at
> org.apache.activemq.ActiveMQConnectionConsumer.dispatch(ActiveMQConnectionConsumer.java:136)
> at
> org.apache.activemq.ActiveMQConnection.onCommand(ActiveMQConnection.java:1407)
> at
> org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:92)
> at
> org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:67)
> at
> org.apache.activemq.transport.MarshallingTransportFilter.onCommand(MarshallingTransportFilter.java:42)
> at
> org.apache.activemq.transport.vm.VMTransport.oneway(VMTransport.java:77)
> at
> org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:45)
> - locked <0x234e2f48> (a java.lang.Object)
> at
> org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:59)
> at
> org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:215)
> at
> org.apache.activemq.broker.AbstractConnection.processDispatch(AbstractConnection.java:722)
> at
> org.apache.activemq.broker.AbstractConnection.dispatchSync(AbstractConnection.java:699)
> at
> org.apache.activemq.broker.region.TopicSubscription.dispatch(TopicSubscription.java:319)
> at
> org.apache.activemq.broker.region.TopicSubscription.add(TopicSubscription.java:78)
> at
> org.apache.activemq.broker.region.policy.SimpleDispatchPolicy.dispatch(SimpleDispatchPolicy.java:51)
> at
> org.apache.activemq.broker.region.Topic.dispatch(Topic.java:444)
> at org.apache.activemq.broker.region.Topic.send(Topic.java:255)
> at
> org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:226)
> at
> org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:349)
> at
> org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:193)
> at
> org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:114)
> at
> org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:98)
> at
> org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:127)
> at
> org.apache.activemq.broker.AbstractConnection.processMessage(AbstractConnection.java:433)
> at
> org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:591)
> at
> org.apache.activemq.broker.AbstractConnection.service(AbstractConnection.java:237)
> at
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:61)
> at
> org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:92)
> at
> org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:67)
> at
> org.apache.activemq.transport.vm.VMTransport.oneway(VMTransport.java:77)
> at
> org.apache.activemq.transport.MarshallingTransportFilter.oneway(MarshallingTransportFilter.java:37)
> at
> org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:45)
> - locked <0x236fe2d8> (a java.lang.Object)
> at
> org.apache.activemq.transport.ResponseCorrelator.asyncRequest(ResponseCorrelator.java:67)
> at
> org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:72)
> at
> org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1115)
> at
> org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1557)
> at
> org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:463)
> at
> org.logicblaze.lingo.jms.impl.OneWayRequestor.doSend(OneWayRequestor.java:196)
> at
> org.logicblaze.lingo.jms.impl.MultiplexingRequestor.doSend(MultiplexingRequestor.java:189)
> - locked <0x236fe448> (a
> org.logicblaze.lingo.jms.impl.MultiplexingRequestor)
> at
> org.logicblaze.lingo.jms.impl.OneWayRequestor.send(OneWayRequestor.java:101)
> at
> org.logicblaze.lingo.jms.impl.OneWayRequestor.send(OneWayRequestor.java:97)
> at
> org.logicblaze.lingo.jms.JmsClientInterceptor.invoke(JmsClientInterceptor.java:133)
> at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
> at
> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
> at $Proxy2.test(Unknown Source)
> at se.ericsson.producer.LingoServlet.doGet(LingoServlet.java:33)
> - locked <0x231d9c70> (a
> se.ericsson.consumer.service.ConsumerServiceFactory)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
> at
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
> at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
> at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
> at java.lang.Thread.run(Thread.java:595)
>
> Found 1 deadlock.
>
>
> Is my setup incorrect in some way or is this a real problem that i found?
>
> Thanks,
> -Kristoffer
>
--
View this message in context:
http://www.nabble.com/Deadlock-in-MutexTransport-tf2490020.html#a6942816
Sent from the ActiveMQ - User mailing list archive at Nabble.com.