Hello,
as I found in the older mailings some people experienced the same
problem as I do in the moment. Seems like problem persisted already in
the earlier versions of the broker (< 4.0), but no solution approach was
found so far. So in my situation, I have a couple of topics, some of
which stay under relatively high message load (>10 messages pro sec)
from the system start. After 1-2 hours a random producer hangs up with
the following stack trace:
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1841)
java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:341)
org.apache.activemq.transport.FutureResponse.getResult(FutureResponse.java:40)
org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:76)
org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1172)
org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1640)
org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:226)
org.apache.activemq.ActiveMQMessageProducerSupport.send(ActiveMQMessageProducerSupport.java:240)
This can also happen to several producers at the same time. As I read in
the preceding posts, such behavior is possible if the consumer fails. As
I use failover, I can't say for sure if the consumer failed just before
the problem occurred. Anyway after the consumer has recovered, the
publisher should definitely receive some response, which does not
happen. Generally speaking, such broker strategy is kind of odd, because
possible listener crash & recover situations should not influence the
work of the producers - they should be really decoupled.
I checked already this page:
http://activemq.apache.org/my-producer-blocks.html. But in my case the
problem also occurs on the empty topics which process a couple of
messages pro minute, whose consumer also fails now and then. So current
topic usage cannot be the reason for this behavior.
I'm currently using AMQ 5.0, but I had the same problem with AMQ 4.1.1.
Does anybody know how such broker behavior can be influenced or if not,
will there be any fixes regarding this bug in the future releases?
Appreciate any help!
Thanks a lot in advance!
Best regards,
Wladimir