Use Shared-memory Overflow (-Mxs) to replace the default value of the shared-memory overflow area; it does not increase it.

Operating system and syntax UNIX / Windows
-Mxs n
Use with Maximum value Minimum value Single-user default Multi-user default
Database Server System dependent1 1 32 kilobytes + padding based on the number of users
n
The size of the shared-memory overflow area in kilobytes.

The overflow area is appended to the shared-memory area. If the overflow area is too small, the database engine exits with the following message:

SYSTEM ERROR: Out of free shared memory. Use -Mxs to increase.

Depending on the operating system, the database engine rounds the shared-memory area size to the next 512-byte or 4K boundary.

Note: Validations using -Mxs can be run online as part of routine health checks. For more information, see  PROUTIL Utility.

Specific memory requirements when using mandatory fields

If you are using mandatory fields, consider the following approximate memory requirements when calculating the value of Shared Memory Overflow (-Mxs):

  • 480 byte overhead
  • 48 bytes for each table containing mandatory fields
  • 12 bytes for each mandatory field

When calculating Shared Memory Overflow (-Mxs), add the total number of bytes to the existing default value. For example, if the total memory required for the mandatory field array is 80K, -Mxs must be (80K + 32K + 4K (100 users).

Note: These numbers are approximations, and may change from release to release.

To modify this parameter while the database is online, use PROUTIL INCREASETO.

You can use this parameter to support continuous operation of the database. For more information, see Change database parameters while the database is running.

1 The maximum is limited only by the size of the signed integer data type on the system.