Governing Memory for Database Child Processes
Starting in Strategy (September 2026), the database child-process memory governor can prevent the creation of new database child processes when system memory reaches configured limits.
The following dependent policies are supported:
-
Limit the total physical memory used by database child processes.
This option is available starting in Strategy (September 2026).
-
If this limit is reached, the following error message displays:
Failed to create new DB connection. The memory used by DB connection child processes has exceeded the maximum limit. Please contact the system administrator for assistance.
-
-
Starting in Strategy (October 2026), require a minimum amount of physical memory to remain available for the Intelligence Server and other processes.
-
If this limit is reached, the following error message displays:
Failed to create new DB connection. Available physical memory is below the configured DB child-process free memory reserve. Please contact the system administrator for assistance.
When both policies are enabled, a new database child process is created only when both checks pass. Connections to the metadata-server and distribution-service are allowlisted and not blocked by the governor to ensure platform resilience.
-
Governing Settings
Limit the Total Physical Memory Used By Database Child Processes
The following setting is used to control the governor:
DssServerMaxDbChildProcessesMemoryPercent
The limit is calculated using the following equation:
total physical memory * setting percentage / 100
The governor collects unique database worker-process IDs from existing connection monitors and compares their total memory usage with this limit.
Connections to the metadata-server and distribution-service are allowlisted and not blocked by the governor to ensure platform resilience.
|
Value |
Behavior |
|
-1 |
Disabled (by default) |
|
1 to 99 |
Enabled |
|
100 |
Enabled but unlimited |
Minimum Physical Memory
The following setting is used to control the governor:
DssServerDBChildFreeMemoryReservePercent
The minimum available memory is calculated using the following equation:
total physical memory × DssServerDBChildFreeMemoryReservePercent / 100
A new database child process can be created only when the following is true:
available physical memory >= minimum available memory
See the following potential values and their behavior:
|
Value |
Behavior |
|
-1 |
Disabled (by default) |
|
1 to 99 |
Enabled |
Define the Setting
If you are using Strategy (October 2026) or later, use the following steps:
-
In the Workstation Navigation pane, click Environments.
-
Right-click your project and choose Properties.
-
In the left pane, click All Settings.
-
Search Maximum memory consumption for DB child processes or Minimum reserved memory for DB child processes.
-
In the Value field, enter a number or select No Limit.
-
Click OK.
If you are using Strategy (September 2026), use the following steps:
-
Open the Strategy REST API Explorer by appending
/MicroStrategyLibrarywith/api-docs/index.html?visibility=allin your browser. -
Create a session and authenticate it. In the Authentication section, use
POST /api/auth/admin/login. -
Click Try Out and modify the request body by providing your username and password.
-
Click Execute.
-
In the response, find
X-MSTR-AuthToken. -
Under the System Administration section, look up
PUT /api/iserver/settings. -
Click Try Out.
-
Set the proper
X-MSTR-AuthTokenfrom step 5. -
Set request body as follows:
Copy{
"settings": [
{
"id": 205,
"dataType": 3,
"value": "80"
}
]
} -
Click Execute.
-
The setting takes effect immediately. No server restart is required.
To confirm the change, repeat the steps above but replace the code in step 6 with GET /api/iserver/settings and view the response value.
