Oracle Performance Firefighting
by Craig Shallahamer

Get the book here



Craig Shallahamer's Blog

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.
Please—Out 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.

-------------------------------

If you review Table 7-1, you'll notice the key to solving mutex-related contention is understanding both the wait event and what is occurring within your application. For example, if the wait event is cursor: pin S (which is the most likely), it's possible that the same cursor is being repeatedly executed by a few users, a few cursors are being executed by many users, or even one simple SQL statement is being executed by hundreds of users concurrently. Once you understand this, you'll then look for the SQL statement with a relatively high execution rate and do anything you can to reduce its execution rate. Using the wait event to lead you to the particular cursor-related situation and understanding the nature of your application is your best solution path.

And again, it is very unlikely mutex waits will be the top wait event (when there is not a related mutex bug), but it occasionally does occur. So it's important to understand mutex serialization control (see Chapter 3) as well as library cache internals and diagnosis.

Oracle has an incredibly difficult challenge in managing shared pool memory. This is rather obvious by all the changes, bugs, patches, and various performance problems over the years. While that may invoke some feelings of sympathy, when faced squarely with a nasty memory management-related issue, sympathy quickly turns to anger. In this section, I will explain how the shared pool memory is managed, its management progression over the years, how memory is allocated and deallocated, how to deal with the feared 4031 error, and finally how to resolve shared pool latch contention.

©2009, 2010 by Craig Shallahamer. This is copyrighted material.
Please—Out 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.


Know what's important before it's too late!

OraPub's
Performance Training

is like no other...





More Class Pics...
Get student testimonials!