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

HA Use independent sequence numbers for identifying messages.

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.18
    • None
    • C++ Clustering
    • None

    Description

      Currently HA code uses queue sequence numbers to identify messasges.
      This assumes that message sequence is identical on primary and backup.

      Implementing new features (for example transactions) requires that we tolerate
      ordering differences between primary and backups.

      We introduces a new, queue-scoped HA sequence number managed by the HA plugin.
      This is used to identify messages independently of queue sequence numbers.

      Needs careful implementation to avoid bad performance effects.

      • Avoid adding headers, use the same mechansim as we have now for sending HA seq. nos.
      • Use an efficient index struct (e.g. dequeue) to map HA seq. to queue seq.

      The benefits:

      • required to support TX
      • required for re-use of stored messages for catchup
      • more robust - does not require primary and backups to have identical message ordering on their queues.

      Attachments

        Activity

          People

            aconway Alan Conway
            aconway Alan Conway
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: