2 Replies Latest reply on Jun 14, 2009 12:42 PM by carl.heymann

    Messages can get stuck in queue if consumer is killed

    carl.heymann

      I executed a simple test on a standalone, non-clustered JBM 2.0.0-BETA1 instance, which caused messages to get stuck in the queue. Here are the steps:
      1. Start a clean, standalone, non-clustered JBM 2.0.0-BETA1 instance.
      2. Start a producer, putting 200 messages in a specific queue. Stop the producer process.
      3. Start a session transacted consumer on the queue. It consumes all the messages.
      4. Kill the consumer process (don't close&cleanup the consumer properly).
      5. At this point there are no messages on the queue. Run the producer again to put another 200 messages on the queue, then stop the producer process.
      6. Start the consumer process again. Now it doesn't consume any messages, even though we know there are 200 messages on the queue.

      I would expect that the new consumer would eventually start receiving the messages, but they really seem stuck.

      To get a consumer to consume any messages again, it is necessary to restart the messaging server. Thereafter the messages can be consumed again.

      The problem doesn't occur at all if the consumers are cleanly closed in stead of the processes killed.

      Is this a known issue? I don't see any JIRAs on something like this for JBM 2.