Example 2 (queue depth events)

This is a more extensive example. However, the principles remain the same. This example assumes the use of the same queue MYQUEUE1 as defined in Figure 7.

Table 12 summarizes the queue event statistics and Table 13 summarizes which events are enabled at different times for this example.

Figure 9 shows the variation of queue depth over time.

Figure 9. Queue depth events (2)

 

Commentary

Some points to note are:

  1. No Queue Depth Low event is generated at:

    • T(1) (Queue depth increasing, and not enabled)

    • T(2) (Not enabled)

    • T(3) (Queue depth increasing, and not enabled)

  2. At T(4) a Queue Depth High event occurs. This enables both Queue Full and Queue Depth Low events.

  3. At T(9) a Queue Full event occurs after the first message that cannot be put on the queue because the queue is full.

  4. At T(12) a Queue Depth Low event occurs.

 

Event statistics summary (example 2)

Table 12. Event statistics summary for queue depth events (example 2)
Event 4 Event 6 Event 8 Event 9 Event 12
Time of event T(4) T(6) T(8) T(9) T(12)
Type of event Queue Depth High Queue Depth Low Queue Depth High Queue Full Queue Depth Low
TimeSinceReset T(4) - T(0) T(6) - T(4) T(8) - T(6) T(9) - T(8) T(12) - T(9)
HighQDepth 800 855 800 1000 1000
MsgEnqCount 1645 311 1377 324 221
MsgDeqCount 845 911 777 124 1021
Table 13. Summary showing which events are enabled
Time period Queue Depth High event Queue Depth Low event Queue Full event
T(0) to T(4) ENABLED - -
T(4) to T(6) - ENABLED ENABLED
T(6) to T(8) ENABLED - ENABLED
T(8) to T(9) - ENABLED ENABLED
T(9) to T(12) - ENABLED -
After T(12) ENABLED - ENABLED
Note:
Events are out of syncpoint. Therefore you could have an empty queue, then fill it up causing an event, then roll back all of the messages under the control of a syncpoint manager. However, event enabling has been automatically set, so that the next time the queue fills up, no event is generated.