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

Openwire messageId needs to be globally unique

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.13.0
    • 2.18.0
    • Broker, OpenWire
    • 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

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            gtully Gary Tully
            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

                Issue deployment