1 Reply Latest reply on Dec 7, 2011 12:16 PM by clebert.suconic

    Dead consumers reserving messages: How to debug?

    jdahlbom

      This is an issue I've been struggling with for a while now, and I am out of any good ideas on how to fix it:

       

      • I am running Jboss 6.1, with HornetQ 2.2.5 in it.
      • I have multiple JMS queues on the server.
      • I have a Spring application deployed as .war, which has several consumers.
      • When I start the server, all queues receive a correct number of consumers (= 1)
      • After a few minutes, sometimes even without any messages added, the consumer count increases to 2 or more.
      • Most of the time, when a queue has consumer count > 1, the messages do not get consumed.
      • Messages are added to DeliveryCount, and usually DeliveryCount==MessageCount.
      • Sometimes some of the messages get consumed, which implies that at least one consumer is functional, while other consumers are not, and will just block the message from being consumed.
      • Number of consumers is not reduced over time.
      • Restarting a server will get rid of the dead consumers. Messages will get consumed until dead consumers appear again.
      • The number of messages here is so small, and they are very small in size. Therefore paging should not be related to this.

       

      How would you go about debugging this issue? What kind of logging could I get out of HornetQ relating to consumers, message assignments etc?

      One thing I'd like to know is which consumer id's the messages get assigned to.

       

      It is also possible this is a Spring issue, but so far Spring has been pretty stable.

       

      This post seemed like it could be related, but I spawned a new discussion due to what Clebert said:

      http://community.jboss.org/message/638168#638168