Oracle Internals Notes

Log Buffer Headers

Oracle DBAs are often puzzled by the presence of two entries for "log_buffer" in V$SGASTAT as follows.
SQL> select * from v$sgastat where name = 'log_buffer';

POOL        NAME                            BYTES
----------- -------------------------- ----------
            log_buffer                     524288
shared pool log_buffer                      16384
The first and larger entry represents the log buffer itself. It resides in its own area of the SGA, normally flanked by guard pages. The second entry represents a 16-byte control structure, or buffer header for each block of the log buffer. The number of blocks in the log buffer, and thus the number of buffer headers required depends on the log block size. In the example above, the log block size is 512 bytes. Thus there are 1024 blocks in the log buffer, and 1024 buffer headers of 16 bytes each. The log buffer headers reside in the main permanent memory chunk in the shared pool. They are not always shown in V$SGASTAT, as the contents of that view are platform specific.


Ixora Pty Ltd.   All rights reserved.
12-Oct-2007 22:22
Search   Questions   Feedback   Up   Home