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

Change Threshold Alerts from Level-Sensitive to Edge-Triggered

Agile BoardAttach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments


    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.20
    • Fix Version/s: 0.21
    • Component/s: C++ Broker
    • Labels:


      Queue threshold events are currently level-sensitive and require a rate-limiting feature. Every time a message is enqueued and the queue depth is above the configured threshold, an event is potentially raised. The repeat-interval attribute prevents the event from being raised too frequently.

      Also, there is no way to produce an event for a lower or going-down threshold.

      The threshold feature should be changed to be edge-triggered as follows:

      Per-queue configuration for thresholds is:

      • upper-threshold (bytes and messages)
      • lower-threshold (bytes and messages)

      Two event types are (or one type with an argument) defined:

      • threshold crossed increasing
      • threshold crossed decreasing

      The increasing event is raised when the queue depth goes from (upper-threshold - 1) to upper-threshold.

      The decreasing event is raised when the queue depth goes from (lower-threshold + 1) to lower-threshold.

      The upper and lower thresholds should have some gap between them to establish hysteresis which will result in limited event rates.

      Message and Byte thresholds will be handled independently.




            • Assignee:
              tross Ted Ross
              tross Ted Ross


              • Created:

                Issue deployment