ACTIVATE_UC_OBJECT can be used to create a recursive call leading to endless loops.
search cancel

ACTIVATE_UC_OBJECT can be used to create a recursive call leading to endless loops.

book

Article ID: 84626

calendar_today

Updated On:

Products

CA Automic Workload Automation - Automation Engine

Issue/Introduction

In Version 10, the script function ACTIVATE_UC_OBJECT could be used to take advantage of a 'bug' to make recursive calls, which when implemented poorly would often lead to endless looping.

This was corrected in the versions Automation Engine 11.2.7, 12.0.4, 12.1.1 and 12.2.0 as follows:
To prevent endless loops in the Automation Engine, the number of recursive object activations is limited. 
The 16th attempt to activate an object is canceled with the status FAULT_OTHER and the error message
 
U00007016 Task 'Name' (RunID '0123456789') is interlaced too much.
 
The limit also applies to recursive workflow activations or a mix of workflow activations and object activations. 
Example: A workflow activates a script which in turn activates the workflow again. If the loop happens 5 times (3 times 5 is 15), the 16th activation is canceled.

This correction means that when upgrading to one of the above mentioned versions or higher, all objects taking advantage of this 'bug' must be redesigned.

Environment

Release: Automic Workload Automation
Component: Automation Engine

Cause

Misuse of the script function ACTIVATE_UC_OBJECT to make recursive calls can leads to endless loops.

Resolution

The recursive call check logic for the script function ACTIVATE_UC_OBJECT has been enhanced by introducing a new setting to define/deactivate the check for endless loops. 
The new setting is called 'MAX_NESTING_DEPTH' and it can be found in the 'UC_SYSTEM_SETTINGS'. 
The valid values for the setting are as follows:
 

Default value = 16 
Max-Value = 9999 
Min-Value = 0 (Check is disabled



The new setting has been introduced in the following versions: 
Automation Engine 12.1.3 HF2 - Available.
Automation Engine 12.1.4 - Available.
Automation Engine 12.2.2 HF1 - Available
Automation Engine 12.3.0 - Available