Qpid
  1. Qpid
  2. QPID-3888

make the SimpleQueueEntryList Iterator clean the list node structure during operation

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.15
    • Component/s: Java Broker
    • Labels:
      None

      Description

      Make the SimpleQueueEntryList Iterator clean the list node structure during operation by using the getNextValidEntry() method rather than getNextNode() method.

      This will result in the HouseKeeping thread performing cleanup similar to that of the scavenge() process, though far less aggressively. In concert with the message delivery processes now also using getNextValidEntry() this will allow the queue to be more self-cleaning, enabling us to work toward simply removing the explicit scavenge() calls which can hinder performance when using selectors and/or having vast numbers of messages on a queue.

        Activity

        Hide
        Rob Godfrey added a comment -

        looks good to me

        Show
        Rob Godfrey added a comment - looks good to me
        Hide
        Robbie Gemmell added a comment -

        Hi Rob,

        Can you review this change please? I havent actually gone so far as removing scavenge yet, I'd like to rework HouseKeeping a bit to make it much more frequent before doing that, this is just a little something that needs done before we could remove it.

        Robbie

        Show
        Robbie Gemmell added a comment - Hi Rob, Can you review this change please? I havent actually gone so far as removing scavenge yet, I'd like to rework HouseKeeping a bit to make it much more frequent before doing that, this is just a little something that needs done before we could remove it. Robbie

          People

          • Assignee:
            Rob Godfrey
            Reporter:
            Robbie Gemmell
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development