Broker 10.5 | webMethods Broker Documentation | webMethods Broker Client C API Programmer's Guide | Using Sequence Numbers | Receipt Sequence Numbers | Other Considerations with Receipt Sequence Numbers
 
Other Considerations with Receipt Sequence Numbers
The Broker guarantees that events from a single publishing Broker client will not be processed out of order. This has important implications when more than one Broker client is sharing the same event queue because the Broker will not return an event to Broker client which is incapable of acknowledging the event.
The following table shows an example event queue containing event received from three different publishing Broker clients; Client A, Client B, and Client C.
Publishing Broker client
Event Queue Position
Broker client A
1
Broker client B
2
Broker client A
3
Broker client C
4
Broker client B
5
Broker client C
6
Consider these steps:
1. Broker client X receives the event from queue position 1 without acknowledging the event.
2. Broker client Y receives the event from queue position 2 without acknowledging the event.
3. Broker client Y then asks for another event and is given the event from queue position 4.
Since the last event from publishing Broker client A has not yet been acknowledged, the next event in the queue from Broker client A cannot be given to a different receiving client.
By enforcing these acknowledgment rules, the Broker allows you to write client applications that process events from a single queue across multiple threads of control.