The Automation Engine is not a real time engine. All time based actions are triggered by a so called “Timer” transaction. This transaction is executed every 20 seconds. (In realty it is a little more complex, however knowing this is sufficient to understand the behavior explained below.)
A UNIX job executing the os command “sleep 30” will have a runtime of approximately 30 seconds:
Using maximum runtime (MRT) of 15 seconds, else cancel, should abort the job:
However it may happen, that the job is not canceled:
Let’s think about 2 scenarios:
Timer take place 5 seconds after job start – MRT still ok.
Next Timer will be 25 seconds (= 5 + 20) after jobs start. Job is still active and will be canceled, because MRT is violated.
Timer take place 12 seconds after job start – MRT still ok.
Next Timer will be 32 seconds (= 12 + 20) after jobs start. Job has finished in the meantime (2 seconds before), so it cannot be canceled, even MRT is violated.
Note:In addition the timing might also be influenced by the current load of the system.
Knowing this it is understandable, that maximum runtime setting below 1 minute do not make sense.