Uploaded image for project: 'ActiveMQ'
  1. ActiveMQ
  2. AMQ-6383

Add a flag to allow forcing network subscriptions to be durable

    Details

    • Type: New Feature
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 5.13.4
    • Fix Version/s: 5.14.0
    • Component/s: Broker, networkbridge
    • Labels:
      None

      Description

      When there is a network bridge for two brokers and a topic is included, there is a conduit subscription created for the topic. This can cause issues if there is a mixture of durable and non-durable subscriptions.

      The issue is that when the conduit subscription gets created, the type of the subscription across the bridge can be either durable or non-durable depending on which local subscription gets created first. This is a problem because you might end up with local durable subs but the network bridge conduit sub is actually non-durable. This can also cause issues if all of the consumers go away because then the conduit sub gets destroyed instead of being retained if it was durable.

      To fix this scenario I think there should be an option to force the conduit subscription to be durable. This could be done on a per topic basis or topic hierarchy. Something like the following:

             <networkConnector name="broker1" duplex="true" uri="static:(tcp://10.x.x.x:61616)">
                      <dynamicallyIncludedDestinations>
                              <topic physicalName="test.topic?forceDurable=true"/>
                      </dynamicallyIncludedDestinations>
              </networkConnector>
      

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                cshannon Christopher L. Shannon
                Reporter:
                cshannon Christopher L. Shannon
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: