Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-8407

[Broker-J][BDB HA] Asynchronous message store recoverer can fail to recover messages on switching the master node

    XMLWordPrintableJSON

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
    • qpid-java-broker-7.1.8
    • Broker-J
    • 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.

      Attachments

        Activity

          People

            orudyy Alex Rudyy
            orudyy Alex Rudyy
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: