Setting the collection expiry
The collection expiry is a property on the Collector node to set a maximum timeout for adding messages to a message collection.
Before you begin
This topic assumes that you have already created a message flow that contains a Collector node. For more information, see Creating a flow that uses message collections.
About this task
When messages are added to a message collection, the incomplete message collection is stored on a queue. If the message collection's event handlers are not satisfied, the incomplete message collection is stored on the queue indefinitely, and not propagated for further processing. If a Collector node has 2 input terminals, and one of the terminals stops receiving messages, for example if the source application is not running, there is the potential for the queue of incomplete message collections to grow indefinitely. To ensure that these incomplete message collections are released after an appropriate amount of time, configure the Collection Expiry property. You can configure this timeout, as a value in seconds, in the Collection Expiry property on the Collector node. The collection expiry timeout starts when the first message is accepted into a message collection. The collection expiry overrides any individual event handler timers. When the collection expiry timeout has passed for a message collection, the incomplete message collection is propagated to the Expire terminal. Connect appropriate processing nodes to the Expire terminal, to handle any expired message collections in your message flow.
To configure a collection expiry:
Procedure
- Open the message flow with the Collector node.
- Right-click the Collector node and select Properties.
- Click the Basic tab.
- In Collection Expiry, enter a time in seconds for the collection expiry timeout.