Show TOC

Procedure documentationConfiguring the Memory Threshold Locate this document in the navigation structure

 

The BPM memory threshold prevents process instances from overfeeding the memory of the system. The memory consumption of the BPM system depends on the following parameters:

  • Number of tokens in a process instance

    The more tokens a process instance has, the larger is the data stored by the BPM system in the memory for its execution, for example, parallel branches.

  • Number of processed process instances

    The more process instances are executed by the BPM system, the more memory is occupied by the data of these instances.

  • Number of failed process instances

    The data of failed process instances is kept in the memory of the BPM system. The more process instances fail, the more memory is occupied.

  • Process definition

    The memory consumption increases with the complexity of the process definition, for example, if the process definition contains many tasks.

  • Volume of process context

    If there is much data in the process context, more memory is occupied.

When the thresholds are reached, the BPM system stops the execution of the process instances or denies the creation of new instances.

It is possible that some business process models have errors and can therefore cause server crashes due to out-of-memory problems. The reasons for this can be endless loops, endless recursive invocations of subprocesses, or the creation of large numbers of tokens for parallel splits. Restarting the engine will not help you to get the BPM engine running again. During restart, the BPM system reloads the running process instances and will run again in an out-of-memory immediately after its restart. There is no way to cancel or to suspend process instances when the BPM system is down.

To prevent the BPM system from such disaster situations, configure the threshold values for the number of process instances and tokens that the system can create.

Caution Caution

Do not disable the BPM memory thresholds. Even if the thresholds are not properly configured, in most cases, it is still possible to recover the system by increasing the heap size temporarily. But if the thresholds are disabled, the system could be in a state where a recovery is not possible anymore.

End of the caution.

Prerequisites

To view the BPM memory thresholds, the NWA_Readonly role is assigned to you.

To configure the BPM memory thresholds, the NWA_SuperAdmin role is assigned to you.

Procedure

You can configure two types of thresholds: Warning and error thresholds. When the warning threshold is reached, only a message is written in the log. Process instances that exceed the error threshold are suspended and further instantiations are denied. These actions are logged in the Business Log and the AS Java Log.

  1. Click View / Configure.

    The system displays:

    • Number of process instances currently running on the server

    • Number of process instances that are in error state as a result of their number of tokens exceeding the error threshold

  2. To configure the threshold values, choose the Configuration tab page.

    You can perform the configuration either for the entire BPM system or for specific process definitions.

    Recommendation Recommendation

    Configure the global thresholds even if thresholds have been set per process definition.

    End of the recommendation.
    1. To configure the threshold values for process definitions:

      1. In the Number of process instances per definition field, enter the number of process instances that must be running for each process definition.

      2. In the Number of token per process instance field, enter the number of tokens that must be running for each process instance.

      3. If you want to specify threshold values specific to a process definition:

        1. Choose Add.

        2. Select the required process definition.

        3. Choose Select

        4. Enter the threshold values for process instances and tokens.

        5. Save the changes.

    2. To configure the threshold values at the BPM system level:

      1. Choose Edit.

      2. Enter the required values in the Total number of process instances field.

      3. Save the changes.