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.
-------------------------------
The reason why buffer busy waits events give firefighters so much trouble is that before they can get to an appropriate (and I stress appropriate) solution set, they must first determine the busy pattern, the block's segment type, and if the block is a header block. With this information, we are now ready to jump to a very specific solution set. Solutions for the most common buffer busy situations are presented in the following sections.
If the same single buffer is nearly always the busy buffer, then we need to figure out why. In our example, a group of buffers were busy, including buffer 4,54; that is, not just a single buffer was nearly always busy. But if there is a single busy buffer, you need to clearly understand what information is being stored in the block (perhaps query the rows just in that block) and why the application is so interested in the block.
You can easily determine the waiting SQL statement based on the waiting session's v$session.sql_id column. Eventually, you will probably need to talk with application developers, as situations like these are typically very application-specific. I have found this situation commonly (but not always) is the result of Oracle sequence numbers not being used. When asked why Oracle sequence numbers are not being used, you may receive a response such as, "Well, we want our application to be database vendor independent." This is another way of saying, "Well, we decided to write our application at the lowest common denominator to make it easy to port."
©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.
|