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

MQTT spec violation when subscribed to wildcard topic on redistribution

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.16.0, 2.17.0
    • 2.19.0
    • MQTT
    • None

    Description

      This is a similar problem to ARTEMIS-2888 - if MQTT messages are redistributed after a client has reconnected and the subscription contains wildcards, the topic of the message contains the wildcard address, not the specific address the message was addressed to.

      Note: Addresses are written in JMS form (x.y.z) instead of MQTT form (x/y/z).

      Step to reproduce

      1. Connect the receiving client to node 1 with a durable session (aka clean-session false) and subscribe to a topic containing wildcards, e.g. test.+.test1
      2. Send a test message using another client to any node to topic test.1234.test1. It should be delivered correctly.
      3. Disconnect the receiving client.
      4. Send a test message to each individual node of the cluster (containing a unique payload for making them identifyable).
      5. Reconnect the receiving client to node 2 (it should work with any of the nodes, even the previously used node 1).
      6. The receiving client will receive all messages. But only the messages of the node the client is currently connected to will contain the correct topic. All other messages will contain test.+.test1 as the topic.

      Attachments

        Issue Links

          Activity

            People

              gtully Gary Tully
              ahubert_rise Andreas Hubert
              Votes:
              3 Vote for this issue
              Watchers:
              6 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 - 6h 50m
                  6h 50m