ActiveMQ Consumer Hangs

Derek picture Derek · Apr 4, 2012 · Viewed 11.8k times · Source

I have an activeMQ broker using an SSL transport. I have about 10 consumers that are using the broker. I am using camel to configure my routes.

Every so often, it hangs up and will not consume new messages, even if I restart the consumers, even though there are messages pending in the queues.

I started trying to isolate where this was happening by stepping through my consumers one at a time trying to replicate the problem. I finally got to a consumer that I could re-create the problem on. It will hang after a period of time, however, if I go to the active MQ admin console and try to view messages in the queue, it will start running again. I think that Jetty is causing a connection to happen to refresh the queue for the webpage, and thus unblocking some thread problem I am having. How should I debug this?

Thanks

Answer

Derek picture Derek · Apr 19, 2012

A colleague of mine stumbled onto something interesting, and I just found an explanation on the internet: http://activemq.2283324.n4.nabble.com/Consumer-is-not-able-to-pick-messages-from-queue-td2531722.html

Apparently there is a page size that can get filled when you have a selector and all the messages are in the same queue. This was happening for us - I hadn't started the consumer, so I ended up with a full page of messages with selectors for a different consumer, and this was causing my running consumer to not get any additional work sent to it.