activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Matt Pavlovich <mattr...@gmail.com>
Subject Re: Consumer performance problem with Tx
Date Thu, 04 Sep 2014 01:13:45 GMT
Hi James-

ActiveMQ 5.5.1 is quite aged at this point. Any reason you aren’t looking at a newer version?

Transactions and connection pooling is tricky— are you doing XA or JMS Local?  I suggest
trying to get it all working, then tune.. CACHE_NONE first.

-Matt

On Sep 2, 2014, at 7:05 AM, James Black <be_strew@yahoo.co.uk> wrote:

> Hi,
> 
> I have a problem that when using transactions all my consumers for a
> particular queue are getting blocking waiting for the commit.  We are using
> the Spring DMLC and are caching at the consumer level.  This is ActiveMQ
> 5.5.1
> 
> All threads end up at a WAITING state with the same stack trace as below:
> 
> "service--51" - Thread t@96
>   java.lang.Thread.State: WAITING
> 	at sun.misc.Unsafe.park(Native Method)
> 	- parking to wait for <12021c84> (a
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
> 	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
> 	at
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
> 	at
> java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
> 	at
> org.apache.activemq.transport.FutureResponse.getResult(FutureResponse.java:40)
> 	at
> org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:87)
> 	at
> org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1284)
> 	at
> org.apache.activemq.TransactionContext.syncSendPacketWithInterruptionHandling(TransactionContext.java:707)
> 	at
> org.apache.activemq.TransactionContext.commit(TransactionContext.java:299)
> 	at org.apache.activemq.ActiveMQSession.commit(ActiveMQSession.java:560)
> 	at
> org.springframework.jms.support.JmsUtils.commitIfNecessary(JmsUtils.java:217)
> 	at
> org.springframework.jms.listener.AbstractMessageListenerContainer.commitIfNecessary(AbstractMessageListenerContainer.java:577)
> 	at
> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:482)
> 	at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:325)
> 	at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:243)
> 	at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1103)
> 	at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1095)
> 	at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:992)
> 	at java.lang.Thread.run(Thread.java:724)
>   Locked ownable synchronizers:
> 	- None
> 
> I know that the transaction speed is limited by the disk performance but we
> do not see the disk IO jump beyond what we would expect it can handle.
> 
> Anyone got any ideas?
> 
> Thanks,
> 
> Justin
> 
> 
> 
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/Consumer-performance-problem-with-Tx-tp4685226.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Mime
View raw message