Products | Versions |
---|---|
TIBCO Enterprise Message Service | - |
Not Applicable | - |
Resolution:
Description:
============
1). If the destination maxbytes limit (for example a queue) is reached, the send call will fail with an exception "Queue limit exceed". Assuming that the following conditions are true, the destination with the smallest value for maxbytes takes precedence.
a). If none of the bridge selectors are defined, so all bridges target destination receive the same number of messages.
b). No producer(s) send messages to the bridge target queue destination.
c). There are no consumers on any of the queues, thus the pending messages for all the queues are growing.
For example, source queue Q1 is bridged to target queues Q2 and Q3. The three queues have the following settings for maxbytes:
Q1: maxbytes=3MB
Q2: maxbytes=2MB
Q3: maxbytes=1MB
As soon as the Q3 1MB limit is reached, the send call will fail with an exception "Queue limit exceed".
2). Note that the bridge order is undefined and if the messages are sent in a non-transacted session, some bridges may receive the messages while the ones which got the error "Queue limit exceed" will not receive the messages.
3). If messages are sent in a transacted session then all or nothing applies but this is limited to non routed destinations.
4). If the messages are sent using RELIABLE or NON_PERSISTENT (with np_check_mode) delivery mode then there will be no feedback from the TIBCO Enterprise Message Service (EMS) to the sender.
Environment:
==========
All OS and versions of EMS.