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.

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

It is very simple to see if your statements are using bind variables. Just look at the SQL Oracle is storing in, for example, v$sqltext. If bind variables are being used, you'll see them.

Discovering severe library cache-related contention can lead to the painful realization that bind variables should be used where they have not been employed. Application developers will be very unhappy, as it can require a significant amount of rework. DBAs dread bringing this to the developer's attention because, once again, they look like the bad guys.

One of my students told me about a situation involving a vendor application used for university student registration. When students logged on to the system and began registering for courses, immediate and intense library cache latch contention manifested. It was obvious and painful! So the DBAs approached the application vendor and presented their case. Surprisingly to them, the vendor replied that the cost of converting the application to using bind variables was simply too expensive. The vendor effectively said, "No way!" Not giving up, the DBAs went back to work and studied the situation closely. To their amazement, they discovered only three SQL statements were repeatedly run the most often. They figured if just the three SQL statements used bind variables, that would be enough to solve the problem. They met with the vendor again, presented their case, and the vendor agreed to make the change. After the bind variables were used, library cache latch contention dropped from sight!

©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!