IBM 000-8697 Server User Manual


 
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.
OnLine uses 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.
Output from 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
discussion of the shared-memory lock table (page 2-51) and shared-memory
buffer management (page 2-55).
Detailed information about locking and process isolation during SQL
processing is provided in IBM 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
A buffer 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
buffer for reading, but no other user process can obtain an update lock or an
exclusive lock on this buffer. Processes requesting update or exclusive lock
access for this buffer are placed on the buffer’s user wait list until the update
lock is released.