Changing the block size allocation for primary keys

When instances, tasks and other objects are created in IBM BPM, a primary key is generated. Primary keys are internal to IBM BPM and they are created as needed. The default block size allocation for a primary key is 50 and this value should not need to be changed in most environments. However, in high-volume environments, it is possible that you might need to increase the block size allocation for a primary key. This is accomplished by specifying the <pri-key-block-size> configuration setting in the 100Custom.xml file.

About this task

The <pri-key-block-size> setting is used for all database tables where IBM BPM creates the primary key. If a cluster contains multiple IBM BPM servers, all servers access the same database. If each server created primary keys independently, there would often be conflicts because two or more servers would create the same primary key. To avoid these conflicts, each server uses the database table LSW_PRI_KEY to assign new primary keys. It would be too resource-intensive to update this table for each new key. Instead, each server allocates a range of values for the new keys by updating the LSW_PRI_KEY table (which retains the high key value for each entity type). After the server has used all the values from the range, it allocates a new range through access to the database. The default value for this range is 50, but the value can be modified using the <pri-key-block-size> configuration setting.

Procedure

To change the block size allocation for a primary key:

  1. In the 100Custom.xml file, specify the block size allocation for the primary key by using the following format:
    <properties>
    <server merge="mergeChildren">
    <pri-key-block-size>200</pri-key-block-size>
    </server>
    </properties>
  2. Restart the server.