Uploaded image for project: 'ActiveMQ Artemis'
  1. ActiveMQ Artemis
  2. ARTEMIS-3323

Openwire messageId needs to be globally unique

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.13.0
    • Fix Version/s: 2.18.0
    • Component/s: Broker, OpenWire
    • Labels:
      None

      Description

      The current openwire message id from a converted core message uses the connection id as the seed combined with the journal id. When a client id is specified on the core producer, the resulting message id may not be unique across brokers due to the alignment of journal ids.

      The result is potential duplicate suppression in error by an openwire client. Visible on the server as a DLQ attempt with:

      __HDR_dlqDeliveryFailureCause=javax.jms.JMSException: Suppressing duplicate delivery on connection, consumer..

       

      This can happen for clusters or multiple standalone brokers.

      The fix is to combine the journal id with the broker node id, such that it is globally unique and static for the life of the broker, which is consistent for redelivery/failover reconnect

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                gtully Gary Tully
                Reporter:
                gtully Gary Tully
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 50m
                  50m