Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-5400

Unable to keep message order using ActiveMQ-RAR

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 5.9.0, 5.10.0
    • 5.12.0
    • None
    • None
    • JBoss EAP6 + ActiveMQ 5.10.0

    • Patch Available

    Description

      We have an application server which processes the messages using an MDB. We are using message grouping to keep the message processing order.

      It seems that it is not possible to do this, because in case the onMessage signals rollback, then the queue does not block until the redelivery time, but keeps on dispatching.

      ActiveMQSession.java method afterRollback() @938 is triggered in this case. Which will redeliver the message by scheduling it:

      connection.getScheduler().executeAfterDelay(new Runnable() {

      @Override
      public void run()

      { ((ActiveMQDispatcher)md.getConsumer()).dispatch(md); }

      }, redeliveryDelay);

      The session is not blocked or otherwise stopped from processing more messages, so it does it.

      Setting prefetch=1 for the consumer did not helped.
      I have maxSessions=1 in the activationSpec.

      Attachments

        Activity

          People

            gtully Gary Tully
            smil Tamas Cserveny
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: