Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
qpid-java-broker-7.0.0, qpid-java-broker-7.0.1, qpid-java-broker-7.1.0, qpid-java-broker-7.0.4, qpid-java-broker-7.0.5, qpid-java-broker-7.0.6, qpid-java-broker-7.0.7, qpid-java-broker-7.1.1, qpid-java-broker-7.1.2, qpid-java-broker-7.0.8, qpid-java-broker-7.1.3, qpid-java-broker-7.1.4, qpid-java-broker-7.1.5, qpid-java-broker-7.1.6, qpid-java-broker-7.1.7
-
None
Description
With asynchronous message store recovery, when mastership is changed and flipped back to the previous node, the cached sequence object resumes sequence id generation from the previous value (before the masteship was changed). As result, the asynchronous message store recoverer fails to recover the messages with IDs greater than maximum sequence range value (in cached sequence object). Such messages are not get recovered from the message store. On follow-up restart, the messages can be potentially recovered, if the message id sequence is sufficiently incremented, however, the issue might result in unordered delivery and generation of duplicate message IDs.
The synchronous message store recoverer is not effected by the issue. Thus, switching to synchronous message store recovery (turned on by default) would allow to work around the problem.