Hi,

I am getting this really weird and random error.

It seems that my threads are getting stucked at dequeue.
I can't understand why they are in a "BLOCKED" mode and not at
"TIME_WAITING"  mode....

What causes this behavior ?When this happens, I don't get any replies
back but the messages are getting processed..

When I look at the thread dump, it normally is in TIME_WAIT mode. but
this one it is in blocked mode.

I'm using ActiveMQ 5.5.0 btw...


It seems that the SimplePrioirtyMessageDispatchChannel is getting
reused and it is going to the same method.
The synchronized method causes it to blocked....



Thread 21906: (state = BLOCKED)
  - java.lang.Object.wait(long) @bci=0 (Compiled frame; information may
be imprecise)
  -
org.apache.activemq.SimplePriorityMessageDispatchChannel.dequeue(long)
@bci=57, line=89 (Compiled frame)
  - org.apache.activemq.ActiveMQMessageConsumer.dequeue(long) @bci=19,
line=452 (Compiled frame)
  - org.apache.activemq.ActiveMQMessageConsumer.receive(long) @bci=53,
line=577 (Compiled frame)
  -
org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveMessage(javax.jms.MessageConsumer)
@bci=23, line=429 (Compiled frame)
  -
org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(java.lang.Object,
javax.jms.Session, javax.jms.MessageConsumer,
org.springframework.transaction.TransactionStatus) @bci=119, line=310
(Compiled frame)
  -
org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(java.lang.Object,
javax.jms.Session, javax.jms.MessageConsumer) @bci=94, line=263
(Compiled frame)
  -
org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener()
@bci=17, line=1058 (Compiled frame)
  -
org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop()
@bci=153, line=1050 (Compiled frame)

Thanks

Reply via email to