activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dain Sundstrom <d...@iq80.com>
Subject Re: Deadlock
Date Mon, 05 Mar 2007 17:47:55 GMT
Changing the ServerUrl to vm://localhost?async=true made the problem  
go away.

Thanks,

-dain

On Mar 5, 2007, at 2:26 AM, Rob Davies wrote:

> one way to get around this one is to run vm:// transport with the  
> async property set to true
>
> On 5 Mar 2007, at 04:08, Dain Sundstrom wrote:
>
>> I'm getting a strange deadlock from ActiveMQ embedded into  
>> OpenEJB.  Any ideas?
>>
>> -dain
>>
>> Found one Java-level deadlock:
>> =============================
>> "pool-1-thread-2":
>>   waiting to lock monitor 0x01810aa8 (object 0x2747e938, a  
>> org.apache.activemq.broker.region.QueueSubscription),
>>   which is held by "ActiveMQ Transport: tcp:///127.0.0.1:54603"
>> "ActiveMQ Transport: tcp:///127.0.0.1:54603":
>>   waiting to lock monitor 0x01810a60 (object 0x27442338, a  
>> java.lang.Object),
>>   which is held by "pool-1-thread-2"
>>
>> Java stack information for the threads listed above:
>> ===================================================
>> "pool-1-thread-2":
>>         at org.apache.activemq.broker.region.PrefetchSubscription 
>> $2.afterCommit(PrefetchSubscription.java:180)
>>         - waiting to lock <0x2747e938> (a  
>> org.apache.activemq.broker.region.QueueSubscription)
>>         at  
>> org.apache.activemq.transaction.Transaction.fireAfterCommit 
>> (Transaction.java:83)
>>         at  
>> org.apache.activemq.transaction.XATransaction.doPostCommit 
>> (XATransaction.java:110)
>>         at org.apache.activemq.transaction.XATransaction.commit 
>> (XATransaction.java:65)
>>         at  
>> org.apache.activemq.broker.TransactionBroker.commitTransaction 
>> (TransactionBroker.java:154)
>>         at  
>> org.apache.activemq.broker.BrokerFilter.commitTransaction 
>> (BrokerFilter.java:94)
>>         at  
>> org.apache.activemq.broker.BrokerFilter.commitTransaction 
>> (BrokerFilter.java:94)
>>         at  
>> org.apache.activemq.broker.MutableBrokerFilter.commitTransaction 
>> (MutableBrokerFilter.java:104)
>>         at  
>> org.apache.activemq.broker.TransportConnection.processCommitTransacti 
>> onOnePhase(TransportConnection.java:406)
>>         at org.apache.activemq.command.TransactionInfo.visit 
>> (TransactionInfo.java:99)
>>         at org.apache.activemq.broker.TransportConnection.service 
>> (TransportConnection.java:284)
>>         at org.apache.activemq.broker.TransportConnection 
>> $1.onCommand(TransportConnection.java:177)
>>         at  
>> org.apache.activemq.transport.ResponseCorrelator.onCommand 
>> (ResponseCorrelator.java:95)
>>         at org.apache.activemq.transport.TransportFilter.onCommand 
>> (TransportFilter.java:65)
>>         at org.apache.activemq.transport.vm.VMTransport.syncOneWay 
>> (VMTransport.java:96)
>>         at org.apache.activemq.transport.vm.VMTransport.oneway 
>> (VMTransport.java:83)
>>         at org.apache.activemq.transport.MutexTransport.oneway 
>> (MutexTransport.java:43)
>>         - locked <0x27442338> (a java.lang.Object)
>>         at  
>> org.apache.activemq.transport.ResponseCorrelator.asyncRequest 
>> (ResponseCorrelator.java:69)
>>         at org.apache.activemq.transport.ResponseCorrelator.request 
>> (ResponseCorrelator.java:74)
>>         at org.apache.activemq.ActiveMQConnection.syncSendPacket 
>> (ActiveMQConnection.java:1171)
>>         at org.apache.activemq.TransactionContext.commit 
>> (TransactionContext.java:449)
>>         at org.apache.activemq.ra.LocalAndXATransaction.commit 
>> (LocalAndXATransaction.java:85)
>>         at  
>> org.apache.geronimo.transaction.manager.TransactionImpl.commit 
>> (TransactionImpl.java:301)
>>         at  
>> org.apache.geronimo.transaction.manager.TransactionManagerImpl.commit 
>> (TransactionManagerImpl.java:264)
>>         at  
>> org.apache.openejb.core.transaction.TransactionPolicy.commitTransacti 
>> on(TransactionPolicy.java:134)
>>         at  
>> org.apache.openejb.core.transaction.TxRequired.afterInvoke 
>> (TxRequired.java:53)
>>         at org.apache.openejb.core.mdb.MdbContainer.afterDelivery 
>> (MdbContainer.java:310)
>>         at  
>> org.apache.openejb.core.mdb.EndpointHandler.afterDelivery 
>> (EndpointHandler.java:272)
>>         at org.apache.openejb.core.mdb.EndpointHandler.invoke 
>> (EndpointHandler.java:163)
>>         at $Proxy68.afterDelivery(Unknown Source)
>>         at org.apache.activemq.ra.MessageEndpointProxy 
>> $MessageEndpointAlive.afterDelivery(MessageEndpointProxy.java:126)
>>         at  
>> org.apache.activemq.ra.MessageEndpointProxy.afterDelivery 
>> (MessageEndpointProxy.java:65)
>>         at org.apache.activemq.ra.ServerSessionImpl.afterDelivery 
>> (ServerSessionImpl.java:216)
>>         at org.apache.activemq.ActiveMQSession.run 
>> (ActiveMQSession.java:749)
>>         at org.apache.activemq.ra.ServerSessionImpl.run 
>> (ServerSessionImpl.java:165)
>>         at org.apache.geronimo.connector.work.WorkerContext.run 
>> (WorkerContext.java:290)
>>         at  
>> org.apache.geronimo.connector.work.pool.NamedRunnable.run 
>> (NamedRunnable.java:32)
>>         at  
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor 
>> $Worker.runTask(ThreadPoolExecutor.java:665)
>>         at  
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor 
>> $Worker.run(ThreadPoolExecutor.java:690)
>>         at java.lang.Thread.run(Thread.java:613)
>> "ActiveMQ Transport: tcp:///127.0.0.1:54603":
>>         at org.apache.activemq.transport.MutexTransport.oneway 
>> (MutexTransport.java:43)
>>         - waiting to lock <0x27442338> (a java.lang.Object)
>>         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.ActiveMQConnection.createSession 
>> (ActiveMQConnection.java:277)
>>         at  
>> org.apache.activemq.ra.ServerSessionPoolImpl.createServerSessionImpl( 
>> ServerSessionPoolImpl.java:63)
>>         at  
>> org.apache.activemq.ra.ServerSessionPoolImpl.getServerSession 
>> (ServerSessionPoolImpl.java:116)
>>         at org.apache.activemq.ActiveMQConnectionConsumer.dispatch 
>> (ActiveMQConnectionConsumer.java:136)
>>         at org.apache.activemq.ActiveMQConnection.onCommand 
>> (ActiveMQConnection.java:1473)
>>         at  
>> org.apache.activemq.transport.ResponseCorrelator.onCommand 
>> (ResponseCorrelator.java:95)
>>         at org.apache.activemq.transport.TransportFilter.onCommand 
>> (TransportFilter.java:65)
>>         at org.apache.activemq.transport.vm.VMTransport.syncOneWay 
>> (VMTransport.java:96)
>>         at org.apache.activemq.transport.vm.VMTransport.oneway 
>> (VMTransport.java:83)
>>         at org.apache.activemq.transport.MutexTransport.oneway 
>> (MutexTransport.java:43)
>>         - locked <0x274460a8> (a java.lang.Object)
>>         at org.apache.activemq.transport.ResponseCorrelator.oneway 
>> (ResponseCorrelator.java:60)
>>         at org.apache.activemq.broker.TransportConnection.dispatch 
>> (TransportConnection.java:1051)
>>         at  
>> org.apache.activemq.broker.TransportConnection.processDispatch 
>> (TransportConnection.java:772)
>>         at  
>> org.apache.activemq.broker.TransportConnection.dispatchSync 
>> (TransportConnection.java:749)
>>         at  
>> org.apache.activemq.broker.region.PrefetchSubscription.dispatch 
>> (PrefetchSubscription.java:404)
>>         at  
>> org.apache.activemq.broker.region.QueueSubscription.dispatch 
>> (QueueSubscription.java:172)
>>         at  
>> org.apache.activemq.broker.region.PrefetchSubscription.add 
>> (PrefetchSubscription.java:129)
>>         - locked <0x2747e938> (a  
>> org.apache.activemq.broker.region.QueueSubscription)
>>         at  
>> org.apache.activemq.broker.region.policy.RoundRobinDispatchPolicy.dis 
>> patch(RoundRobinDispatchPolicy.java:54)
>>         - locked <0x2746c9f0> (a  
>> edu.emory.mathcs.backport.java.util.concurrent.CopyOnWriteArrayList)
>>         at org.apache.activemq.broker.region.Queue.dispatch 
>> (Queue.java:472)
>>         at org.apache.activemq.broker.region.Queue.send(Queue.java: 
>> 298)
>>         at org.apache.activemq.broker.region.AbstractRegion.send 
>> (AbstractRegion.java:292)
>>         at org.apache.activemq.broker.region.RegionBroker.send 
>> (RegionBroker.java:377)
>>         at org.apache.activemq.broker.TransactionBroker.send 
>> (TransactionBroker.java:193)
>>         at org.apache.activemq.broker.BrokerFilter.send 
>> (BrokerFilter.java:126)
>>         at  
>> org.apache.activemq.broker.CompositeDestinationBroker.send 
>> (CompositeDestinationBroker.java:98)
>>         at org.apache.activemq.broker.MutableBrokerFilter.send 
>> (MutableBrokerFilter.java:136)
>>         at  
>> org.apache.activemq.broker.TransportConnection.processMessage 
>> (TransportConnection.java:480)
>>         at org.apache.activemq.command.ActiveMQMessage.visit 
>> (ActiveMQMessage.java:604)
>>         at org.apache.activemq.broker.TransportConnection.service 
>> (TransportConnection.java:284)
>>         at org.apache.activemq.broker.TransportConnection 
>> $1.onCommand(TransportConnection.java:177)
>>         at org.apache.activemq.transport.TransportFilter.onCommand 
>> (TransportFilter.java:65)
>>         at  
>> org.apache.activemq.transport.WireFormatNegotiator.onCommand 
>> (WireFormatNegotiator.java:133)
>>         at  
>> org.apache.activemq.transport.InactivityMonitor.onCommand 
>> (InactivityMonitor.java:122)
>>         at org.apache.activemq.transport.TransportSupport.doConsume 
>> (TransportSupport.java:84)
>>         at org.apache.activemq.transport.tcp.TcpTransport.run 
>> (TcpTransport.java:137)
>>         at java.lang.Thread.run(Thread.java:613)
>>
>>
>


Mime
View raw message