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

STOMP: V1.2 client that acks inside a TX can lose ability to ack after TX abort

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 5.15.9
    • 5.15.10, 5.16.0
    • STOMP
    • None

    Description

      When acknowledgement occurs inside a transaction it is valid for the TX to be aborted and the messages to be acknowledged a second time in a new TX or on their own.  The broker currently loses track of the acks that are removed from the pending Acks index as it doesn't recover them on abort and repopulate the pending index. 

      There is also a race that occurs on dispatch and ack that allows for loss of ack Ids as the current code clears the full pending index on either boundary when it should only be removing the involved transactionally enlisted messages.

      Attachments

        Issue Links

          Activity

            People

              tabish Timothy A. Bish
              tabish Timothy A. Bish
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: