Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-3064

queues will prevent GC of a closed subscription if it was the last used subscription and no more messages are enqueued

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.6, 0.7, 0.8, 0.9, 0.10, 0.11, 0.12
    • Fix Version/s: 0.13
    • Component/s: Java Broker
    • Labels:
      None

      Description

      SimpleAMQQueue uses an atomic reference to round robin the subscriptions when attempting to deliver a mesage to a subscription during enqueue operations. This reference will prevent the subscription being Garbage Collected when it is closed if the subscription was the last used and no more messages are enqueued. When unregistering a subscription, this reference should be updated if it points to the closing subscription.

        Activity

        Hide
        k-wall Keith Wall added a comment -

        Reviewed, no comments from me.

        Show
        k-wall Keith Wall added a comment - Reviewed, no comments from me.
        Hide
        gemmellr Robbie Gemmell added a comment -

        Hi Keith, could you review these changes please?

        The 'last used subscription' marker functionality was moved onto the SubscriptionList itself, and if the marked subscription is deleted a dummy node is inserted to allow the real nodes removal.

        Thanks,
        Robbie.

        Show
        gemmellr Robbie Gemmell added a comment - Hi Keith, could you review these changes please? The 'last used subscription' marker functionality was moved onto the SubscriptionList itself, and if the marked subscription is deleted a dummy node is inserted to allow the real nodes removal. Thanks, Robbie.

          People

          • Assignee:
            k-wall Keith Wall
            Reporter:
            gemmellr Robbie Gemmell
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development