Iliya Grushevskiy created ARTEMIS-3815:
------------------------------------------
Summary: Target mirror controller may commit received message
after receiving ACK for it
Key: ARTEMIS-3815
URL: https://issues.apache.org/jira/browse/ARTEMIS-3815
Project: ActiveMQ Artemis
Issue Type: Bug
Components: AMQP
Affects Versions: 2.22.0, 2.21.0, 2.19.1
Reporter: Iliya Grushevskiy
Given two brokers *A* and {*}B{*}, with configured mirror *A* towards *B* and a
queue {*}Q{*}. If disk operations on *B* are slow, and there are active
exchanges of messages on queue {*}Q{*}, for example:
# Send message 1
# ACK message 1
# Send message 2
# ACK message 2
# ...
At the end queue *Q* on *B* will contain some unacknowledged messages, while
queue *Q* on *A* will be empty.
The issue is that commit in sendMessage may take some time and ref to message
will be written to the intermediate store only after receiving an ACK for this
message.
Test with synthetic delay:
https://github.com/iliya-gr/activemq-artemis/tree/mirror-fast-ack
--
This message was sent by Atlassian Jira
(v8.20.7#820007)