2-38 IBM Informix OnLine Database Server Administrator’s Guide

Shared Memory and Buffer Locks

Shared Memory and Buffer Locks
A primary benefit of shared memory is the ability of multiple OnLine user
processes to share access to disk pages stored in the shared-memory buffer
pool. OnLine maintains process isolation while achieving this increased
concurrency through a strategy of buffer locking.
OnLineuses three types of locks to manage access to shared-memory buffers:
Share locks
Promotable, or update, locks
Exclusive locks
Each of these lock types enforces the required level of OnLine process
isolation during execution.
Outputfrom OnLine utilities, such as tbstat-k, uses the flags S, U, and X to
indicate the respective lock types.
For further information about locking and shared memory, refer to the
discussionof the shared-memory lock table (page 2-51) and shared-memory
buffer management (page2-55).
Detailed information about locking and process isolation duringSQL
processing is provided inIBM Informix Guide to SQL: Tutorial.

Buffer Share Lock

A buffer is in share mode, or has a share lock, if one or more OnLine user
processes have access to the buffer to read the data and none intends to
modify the data.

Buffer Update Lock

Abuffer is in update mode, or has an update lock, if one user process intends
to modify the contents of the buffer. Multiple user processes can share the
bufferfor reading, but no other user process can obtain an update lock or an
exclusive lock on this buffer. Processes requesting update or exclusive lock
accessfor this buffer are placed on the buffer’s user wait list until the update
lock is released.