Critical State Memory Manager
What the critical state memory manager is for¶
The amount of memory used by an application server depends on CCH Tagetikusage and varies a lot based on the number of user sessions, the number and type of data processes running, the application setup and the size of the database.If the available memory is exhausted, the application may remain in an inconsistent state or no longer respond to user requests.
The critical state memory manager is used to avoid approaching the threshold past which the available memory will be exhausted.
Depending on the configuration that has been set, it makes it possible to block the launch of new data processing and potentially also terminate processes that are running, where they are defined as “interruptible”, if the application server is using more memory than the threshold for entering a critical state.
To manage the memory when it is in a critical state, it is necessary to define the following elements:
- Action required when in critical state
- JVM heap load threshold before entering a critical state (%)
- JVM heap load threshold for exiting a critical state (%)
The default action to be taken in a critical state is to block the launch of new data processing, thus avoiding further overloading a system under stress.

If the application server terminates due to a lack of memory, identify the origin of the problem and check whether the size of the application server’s memory is correct.In this case, enable the critical state memory manager and block data processing found to be in a critical situation.
Determining critical states¶
Every time the system needs to increase the amount of memory being used, the manager checks whether or not it is in a critical situation.
If the system is in a critical situation and the memory usage trend is showing an increase compared with the previous measurement, then the critical state memory manager requests the termination of most recently started data processing that is defined as “uninterruptible” and potentially uses the most memory.
The same thing occurs when the system is in a critical situation and the memory usage trend is showing a reduction, but there is no pending request to terminate data processing.
Blocking the launch of new data processing¶
When the application’s status is critical in terms of memory usage, the critical state manager may refuse to launch new data processing, if this behaviour is enabled in the settings.This applies both for requests made by users on the user interface and for scheduled data processing.
If the data processing was launched manually from the web interface, the following behaviours may take place:
| If the user chooses to... | Then the system... |
|---|---|
| cancel the data processing | does not perform any action. |
| relaunch the data processing | attempts to launch the data processing again.- If there is still insufficient available memory, it blocks the data processing immediately and displays and error message. |
| book the data processing | the data processing is added to the queue. In single-server environments, the data processing is launched as soon as the critical state has been exited.in multi-server environments, the data processing can be performed on a server subject to a lower load. |
Termination of data processing¶
When the critical state memory manager terminates data processing, it does so to ensure that other data processing underway is able to be completed successfully.Data processing completed by the critical state memory manager ends with the message “The data processing was stopped by the system”.
For data processing launched manually from the web interface, the user is given the options described in Critical State Memory Manager.
Audit¶
If at least the Tracking enabled is set in the Action required when in critical state configuration, then the Audit registers every time the system enters or exits a critical on the Resources Monitor operation.
The two types of event registered by the Resources Monitor operation are:
- Critical memory usage detected - indicates that the system has entered a critical state
- Healthy memory come back - indicates that the system has exited the critical state
Four pieces of information are registered in the details of the Audit operation:
- the garbage collector counter - useful information for recovering the same event in the logs
- the percentage of memory used
- the memory trend, which may be INCREASING or DECREASING
- the memory status, which may be RED (in a critical state) or GREEN (not in a critical state)
The audit also registers, in the Operations on data processing in progress category, any individual termination requests for each of the data processes in progress that the memory manager has requested to stop.
All audit registrations made by the memory manager are made in the name of the system ser TagetikSystemAdministrator.