Qpid
  1. Qpid
  2. QPID-3387

QueueEntries can hold the Subscriptions which rejected them in memory after they are closed

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.5, 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

      QueueEntries can hold Subscriptions which rejected them in memory after they are closed, due to the implementation of the isRejectedBy() method. This is further compounded by the Subscriptions having a reference to the channel/session they belong to, which in the case of a 0-10 ServerSession can be an extremely heavy weight object in the wrong conditions. The isRejectedBy() implementation should be updated to function without requiring a reference to the Subscription itself, thus preventing the retention leak.

      I have had a simple patch for this for a while, its just waiting for QPID-3386 being done (which it almost is, will get it committed shortly).

        Issue Links

          Activity

          Hide
          Robbie Gemmell added a comment -

          Hi Keith, could you review these changes please? Thanks, Robbie.

          Show
          Robbie Gemmell added a comment - Hi Keith, could you review these changes please? Thanks, Robbie.
          Hide
          Keith Wall added a comment -

          Reviewed earlier this month as part of QPID-3386. There were no comments.

          Show
          Keith Wall added a comment - Reviewed earlier this month as part of QPID-3386 . There were no comments.

            People

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

              Dates

              • Created:
                Updated:
                Resolved:

                Development