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
- supercedes
-
AMQ-7211 Pending ACKs errantly being cleared on STOMP transaction COMMIT/ABORT
- Closed