2-58 IBM Informix OnLine Database Server Administrator’s Guide
LRU Queues and Buffer Pool Management
LRU Queues and Buffer Pool Management
Before processing begins, all page buffers are empty. Every page buffer is
associated with a buffer header in the buffer table. Every buffer header is
represented by an entry in one of the FLRU queues. The buffer headers are
evenly distributed among the FLRU queues. (Refer to page 2-57 for more
information about the FLRU and MLRU queues.)
When a user process needs to acquire a buffer, OnLine randomly selects one
of the FLRU queues and uses the “oldest” or “least-recently used” entry in the
list. If the least-recently used page can be latched, that page is removed from
the queue.
If the FLRU queue is locked and the end page cannot be latched, OnLine
randomly selects another FLRU queue.
If a user process is searching for a specific page currently stored in shared
memory, it obtains the page’s LRU queue location from the control infor-
mation stored in the buffer table.
After an executing process finishes its work, it releases the buffer. If the page
has been modified, the buffer is placed at the “most-recently used” end of an
MLRU queue. If the page was read but not modified, the buffer is returned to
the FLRU queue at its “most-recently used” end.
You can monitor LRU status by executing the command tbstat -R.