Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-4621

Provide a polling SlowConsumerPolicy that uses LastAck time on a sub

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    Description

      The existing AbortSlowConsumer policy is event driven. It depends on a consumer slow event that is triggered when the prefetch is reached and there are subsequent dispatches.

      With prefetch=0|1 there still needs to be throughput to determine that the consumer is slow so one message can be pending if there are no new messages to sent to the destination.

      Providing an alternative implementation that will periodically poll consumers for their last ack time will be more deterministic. The slow advisory may never fire, but the consumer will get aborted if it does not ack in a timely manner.

      if lastAckTime exceeds the max and there are dispatched messages it can be a candidate for removal.
      Optionally lastAckTime exceeding and no dispatched messages can be a way to remove idle consumers. Not sure if that is necessary.

      Attachments

        1. AMQ4621Patch.txt
          44 kB
          Timothy A. Bish
        2. kahaPendingMEssage-20130905.zip
          24 kB
          Jason Shepherd
        3. kahaPendingMEssage-20130906.zip
          37 kB
          Jason Shepherd
        4. AMQFreezeTest-5.8.0.redhat-60029.zip
          15 kB
          Jason Shepherd

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            tabish Timothy A. Bish
            gtully Gary Tully
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment