MAX_LOCKS_PER_TABLESPACE built-in global variable
The MAX_LOCKS_PER_TABLESPACE global variable contains a big integer value that specifies the default maximum number of page, row, or LOB locks that an application can simultaneously hold in a table space.
FL 507
When a thread hits this limit, it does not fail. Instead, the thread stops acquiring individual row locks, and lock escalation converts the existing child locks into a gross lock on the entire partition or table space. The lock escalation also occurs without Db2 issuing a message to report the situation.
The value that you specify for this field must be less than the value of the MAX_LOCKS_PER_USER built-in global variable (except when MAX_LOCKS_PER_USER is set to 0).
The MAX_LOCKS_PER_TABLESPACE variable has the following characteristics:
- It is updatable, with values maintained by the user.
- The type is BIGINT.
- The schema is SYSIBMADM.
- The scope of this global variable is session.
- The default value is determined from the NUMLKTS subsystem parameter at the start of the application. Any subsequent changes to the NUMLKTS subsystem parameter do not affect the value of MAX_LOCKS_PER_TABLESPACE. You can use either of the following SET assignment statements to reinitialize MAX_LOCKS_PER_TABLESPACE using the current value of the NUMLKTS subsystem parameter:
SET SYSIBMADM.MAX_LOCKS_PER_TABLESPACE = DEFAULT;SET SYSIBMADM.MAX_LOCKS_PER_TABLESPACE = NULL; - The acceptable range of values is 0–104857600
