Question & Answer
Question
How does the trigger interval set for an agent work in Sterling Order management? This is set in the Application console under agent configuration for each agent under Time Triggered -> Criteria Parameters -> Schedule trigger Message Interval (Min) This parameter ensures that the agent processing is auto triggered for the specified duration
Answer
The agent framework is designed to provide backend batch processing in a specific order. It does not guarantee that the auto trigger will happen after a fixed time. The auto trigger is meant to provide an ability to continuously process records without manual intervention.
As per the design of the trigger, there is a daemon thread running to put the next trigger message for the agent. This thread will execute after every 't' minutes (where t is the auto trigger interval set for agent). On execution it checks whether the agent threads have been idle for for 't' or more minutes. If yes, it puts a new trigger message otherwise it will not do anything and the trigger message will be put on the next execution i.e. after 't' more minutes.
The above logic is to ensure that the agent gets some idle wait time for atleast 't' minutes. In other words, the agent will be idle for a time 'x' where t <= x < 2t. This wait time is important to allow the the business data to get accumulated for the duration given in trigger interval, so that getJobs can act upon the accumulated data rather than 'less volume of data'.
In some cases (eg when multiple JVMs are running and previous run of agent finished very quickly), the minimum idle time of the agent may be lesser than 't' minutes by a margin of 30 to 60 seconds depending on the trigger interval. For trigger interval of 1 minute, this margin would be 30 seconds while for higher trigger intervals this margin would be 60 seconds.
Was this topic helpful?
Document Information
Modified date:
16 June 2018
UID
swg21999814