DB2 Version 9.7 for Linux, UNIX, and Windows

Locks and concurrency control

To provide concurrency control and prevent uncontrolled data access, the database manager places locks on buffer pools, tables, data partitions, table blocks, or table rows.

A lock associates a database manager resource with an application, called the lock owner, to control how other applications access the same resource.

The database manager uses row-level locking or table-level locking, as appropriate, based on:

A buffer pool lock (exclusive) is set whenever a buffer pool is created, altered, or dropped. You might encounter this type of lock when collecting system monitoring data. The name of the lock is the identifier (ID) for the buffer pool itself.

In general, row-level locking is used unless one of the following is true:
In the case of an MDC table, block-level locking is used instead of row-level locking when:
The duration of row locking varies with the isolation level being used: