search cancel

Processing interrupted issue when Scripts (SCRI) are generating

book

Article ID: 89320

calendar_today

Updated On:

Products

CA Automic Workload Automation - Automation Engine

Issue/Introduction

The runtime of a script is quite random, varies between 00:00:30 to 00:13:00, however reading and writing the same data. 
 
the message displays something like:
U00010037 Object: 'JOBS.JOBNAME', client: '0100': processing interrupted, possible loop! Script processing will continue in '002' seconds.
U00010037 Object: 'JOBS.JOBNAME', client: '0100': processing interrupted, possible loop! Script processing will continue in '001' seconds.
 
This specifically happens while a script (including in Pre-Process, Process, or Post-Process tab) runs a PREP_PROCESS command like PREP_PROCESS_VARIABLE or PREP_PROCESS_REPORT.

Cause

To avoid possible loop,  AE engine set up a setting SCR_LOOPCHK_TIME (in UC_SYSTEM_SETTINGS)  - Time period in seconds after which an endless loop is assumed in a script.
 
Script generation always stops every 5 seconds, regardless of the value specified in SCR_LOOPCHK_TIME. Doing so ensures that the script can be canceled without blocking other tasks

Resolution

NOTE: Take caution when increasing SCR_LOOPCHK_TIME as it can cause system processing and performance problems
 
This setting affects scripts whose generation takes longer than specified here. In such cases, script generation repeatedly pauses for some time in order to avoid unnecessary UC4 Automation Engine load.

SCR_LOOPCHK_TIME is used to define the frequency with which the script is interrupted. The subsequent waiting time is always 1 second in the beginning. This time is doubled after every interruption. The longest waiting time is 128 seconds. When this value has been reached, the waiting time is always 128. It is no longer doubled.

Example for SCR_LOOPCHK_TIME 3:

Script starts

Generation starts

after 3 seconds

Generation pauses

Waiting time

Duration: 1 second

Script continues

Generation continues

after further 3 seconds

Generation pauses

Waiting time

Duration: 2 seconds

Script continues

Generation continues

after further 3 seconds

Generation pauses

Waiting time

Duration: 4 seconds

etc.