Qpid
  1. Qpid
  2. QPID-2733

Temp queues created when receiving from an exchange are not deleted.

    Details

      Description

      In the new addressing scheme, when you subscribe to an exchange a temp queue is created for the subscriber.
      The queue deletion depends on the reliability mode.

      If reliability mode is "unreliable" or "at-most-once" then the queue should be created with auto-delete=true.
      If reliability mode is "at-least-once" then the queue should set auto-delete=false, and the queue will only be deleted if the client app invokes consumer.close().
      If x-declare properties include auto-delete=true, then the reliability mode is ignored.

        Issue Links

          Activity

          Hide
          Rajith Attapattu added a comment -

          Moved the fix version to 0.9 as the complete solution depends on QPID-2732

          Show
          Rajith Attapattu added a comment - Moved the fix version to 0.9 as the complete solution depends on QPID-2732
          Hide
          Rajith Attapattu added a comment -

          Descoping the JIRA as the current solution does not implement all the functionality described in the description.

          Show
          Rajith Attapattu added a comment - Descoping the JIRA as the current solution does not implement all the functionality described in the description.
          Hide
          Rajith Attapattu added a comment -

          Since this issue depends on QPID-2732 and that JIRA was closed as wont-fix, marking this issue closed as well.

          Show
          Rajith Attapattu added a comment - Since this issue depends on QPID-2732 and that JIRA was closed as wont-fix, marking this issue closed as well.
          Hide
          Justin Ross added a comment -

          QPID-2732 was closed as part of a jira cleanup, not wontfix. Can you clarify if there's something to do here?

          Show
          Justin Ross added a comment - QPID-2732 was closed as part of a jira cleanup, not wontfix. Can you clarify if there's something to do here?
          Hide
          Rajith Attapattu added a comment -

          The title is slightly misleading. The queues are deleted when the connection is canned.
          However when the connection is lost the queue is deleted and after failover a new queue is created.
          However if we specify "at-least-once" as the reliability mode, then the above is not the correct behaviour.

          However it was decided not to fix this for the current client as it requires more substantial changes to the code base.
          One big issue is that The destination object holds the subscription queue. This is incorrect on many levels. The same destination can be used by multiple subscribers.
          We should hold the subscription queue as a property of MessageConsumer.

          Show
          Rajith Attapattu added a comment - The title is slightly misleading. The queues are deleted when the connection is canned. However when the connection is lost the queue is deleted and after failover a new queue is created. However if we specify "at-least-once" as the reliability mode, then the above is not the correct behaviour. However it was decided not to fix this for the current client as it requires more substantial changes to the code base. One big issue is that The destination object holds the subscription queue. This is incorrect on many levels. The same destination can be used by multiple subscribers. We should hold the subscription queue as a property of MessageConsumer.

            People

            • Assignee:
              Rajith Attapattu
              Reporter:
              Rajith Attapattu
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development