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

[Java Broker] Slow performance of Shared Groups message grouping on large queues

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 0.28, 0.30, 0.32
    • qpid-java-6.0
    • Broker-J
    • None

    Description

      In shared group mode, when a consumer gets to the point where it has no more messages from a group acquired by it, the consumer effectively relinquishes control of the group. At this point all messages from the group become available to other consumers... which means that if they have gone "past" any such messages then then need to be reset.

      Currently this is achieved by iterating over the group and finding the next available member of the group, and then making sure the consumers are set to before that point.

      However if the queue is large, and the common case is that there are no members of the group, then every consumption of a message leads to iterating over the whole queue.

      It is preferable to keep a track of which messages consumers may have skipped over, and simply to reset them to the least of these values.

      Attachments

        Activity

          People

            rgodfrey Robert Godfrey
            rgodfrey Robert Godfrey
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: