Configuring Lock Escalation

Status

If you are...

This task is...

Installing a new iProcess Engine Version 11.8.0

Required

Upgrading from an iProcess Engine Version 11.0 or later

N/A

Database

DB2

Description

DB2 maintains a lock list for the iProcess Engine database, which contains the locks held by all applications concurrently connected to the database. Both rows and tables can be locked.

Lock escalation is the process of replacing row locks with table locks, so reducing the total number of locks in the list. The following DB2 database configuration parameters control lock escalation:

locklist indicates the amount of storage that is allocated to the database lock list.
maxlocks defines the percentage of the lock list that an application can hold before the database manager performs lock escalation. (Lock escalation also occurs if the lock list runs out of space.)

If you use the default maxlocks and locklist, iProcess Engine performance may be affected. The iProcess Engine Background (BG) process locks multiple rows as part of its normal operations, and the number of locked rows can exceed the maxlocks percentage. Some or all of these row locks are therefore escalated to table locks, which blocks access to those tables by other iProcess Engine processes or applications.

Procedure

To prevent row locks from being escalated to table locks, you should increase the values of the locklist and maxlocks parameters. Use the following commands:

db2 update database configuration for db_name using maxlocks 40
db2 update database configuration for db_name using locklist 1000

where db_name is the name of the iProcess Engine database you created earlier (see Creating a DB2 Database).

Note 

TIBCO recommends values of 40 for maxlocks and 1000 for locklist. However, these values are only a guide as the amount of locks in a BG process transaction depends on the amount of data being written to various tables. You should modify these values to suit your particular requirements.

See Also

For more information about these parameters and commands, see your DB2 documentation.