You were brought to this page based on an internet search
and as a free service to Oracle DBAs.
The text below is an except from the book,
Oracle Performance Firefighting, written by
Craig Shallahamer of
OraPub, Inc.
Figures and tables are not included on this page, only their reference.
To order the book in either print or PDF form, click
here.
©2009, 2010 by Craig Shallahamer. This is copyrighted material.
PleaseOut of respect for those involved in the creation of the book and also for
their familes, we ask you to respect the copyright both in intent and deed. Thank you.
-------------------------------
Oracle does not expose pinned buffers through v$bh, but any buffer that is touched has also been pinned. Oracle will also pin a buffer when it is being moved onto the write list and while updating its touch count (both discussed later in this chapter).
While buffers do reside in the buffer cache and buffers are indeed changed, list management acts on buffer headers, not the actual buffers. A buffer header is an optimized in-memory metastructure that contains information about a buffer and its associated block, but does not contain block data such as rows.
Figure 6-4 shows the one-to-one relationship between a buffer header, its associated buffer, and its data block. As illustrated in Figure 6-4, the buffer headers contain, in part, where a buffer resides in the buffer cache, where the associated block resides on disk, and when the buffer was last read from disk. If you hear kernel developers talking about a DBA, they are not referring to you! They are referring to a block's disk address, which is called the data block address, or DBA for short.
©2009, 2010 by Craig Shallahamer. This is copyrighted material.
PleaseOut of respect for those involved in the creation of the book and also for
their familes, we ask you to respect the copyright both in intent and deed. Thank you.
|