<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Library cache latches gone in Oracle 11g</title>
	<atom:link href="http://blog.tanelpoder.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.tanelpoder.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=library-cache-latches-gone-in-oracle-11g</link>
	<description>Oracle, Exadata, Performance, Troubleshooting - Mobile Life and Productivity.</description>
	<lastBuildDate>Wed, 08 Feb 2012 08:03:50 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Book Review: Oracle Core Essential Internals for DBAs and Developers &#171; Charles Hooper&#039;s Oracle Notes</title>
		<link>http://blog.tanelpoder.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/comment-page-2/#comment-10516</link>
		<dc:creator>Book Review: Oracle Core Essential Internals for DBAs and Developers &#171; Charles Hooper&#039;s Oracle Notes</dc:creator>
		<pubDate>Sun, 25 Dec 2011 13:46:20 +0000</pubDate>
		<guid isPermaLink="false">http://tanelpoder.wordpress.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/#comment-10516</guid>
		<description>[...] the library cache pin allocation latch…”.  That particular latch appears to have been removed in Oracle Database 11.1.0.6, however it is not clear if this section of the book is only describing behavior prior to Oracle [...]</description>
		<content:encoded><![CDATA[<p>[...] the library cache pin allocation latch…”.  That particular latch appears to have been removed in Oracle Database 11.1.0.6, however it is not clear if this section of the book is only describing behavior prior to Oracle [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Book Review: Oracle Database 11g Performance Tuning Recipes &#171; Charles Hooper&#039;s Oracle Notes</title>
		<link>http://blog.tanelpoder.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/comment-page-2/#comment-8074</link>
		<dc:creator>Book Review: Oracle Database 11g Performance Tuning Recipes &#171; Charles Hooper&#039;s Oracle Notes</dc:creator>
		<pubDate>Sat, 10 Sep 2011 21:14:16 +0000</pubDate>
		<guid isPermaLink="false">http://tanelpoder.wordpress.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/#comment-8074</guid>
		<description>[...] latches prior to Oracle Database 11.1, and as of 11.1 most of the library cache related latches are now mutexes.  The book states, “The preceding discussion applies to row locks, which are always taken in the [...]</description>
		<content:encoded><![CDATA[<p>[...] latches prior to Oracle Database 11.1, and as of 11.1 most of the library cache related latches are now mutexes.  The book states, “The preceding discussion applies to row locks, which are always taken in the [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jaxon</title>
		<link>http://blog.tanelpoder.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/comment-page-2/#comment-7705</link>
		<dc:creator>Jaxon</dc:creator>
		<pubDate>Wed, 13 Jul 2011 23:15:42 +0000</pubDate>
		<guid isPermaLink="false">http://tanelpoder.wordpress.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/#comment-7705</guid>
		<description>I might be beanitg a dead horse, but thank you for posting this!</description>
		<content:encoded><![CDATA[<p>I might be beanitg a dead horse, but thank you for posting this!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Doug Burns</title>
		<link>http://blog.tanelpoder.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/comment-page-2/#comment-7548</link>
		<dc:creator>Doug Burns</dc:creator>
		<pubDate>Wed, 29 Jun 2011 06:49:33 +0000</pubDate>
		<guid isPermaLink="false">http://tanelpoder.wordpress.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/#comment-7548</guid>
		<description>It was 11.2.0.2 but what was interesting was that only one of the blocked sessions had the information populated - the first session blocked in the chain if that makes sense? All of the others that were blocked in turn by that first blocked session didn&#039;t have the information populated. So, as usual in my experience, ASH blocked session info is limited.</description>
		<content:encoded><![CDATA[<p>It was 11.2.0.2 but what was interesting was that only one of the blocked sessions had the information populated &#8211; the first session blocked in the chain if that makes sense? All of the others that were blocked in turn by that first blocked session didn&#8217;t have the information populated. So, as usual in my experience, ASH blocked session info is limited.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tanel Poder</title>
		<link>http://blog.tanelpoder.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/comment-page-2/#comment-7547</link>
		<dc:creator>Tanel Poder</dc:creator>
		<pubDate>Tue, 28 Jun 2011 16:44:52 +0000</pubDate>
		<guid isPermaLink="false">http://tanelpoder.wordpress.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/#comment-7547</guid>
		<description>&lt;a href=&quot;#comment-7546&quot; rel=&quot;nofollow&quot;&gt;@Doug Burns&lt;/a&gt; 

Cool! Was it 11g+? In 10g (at least up to 10.2.0.3 or .4 the mutex waiters didn&#039;t populate blocking session)</description>
		<content:encoded><![CDATA[<p><a href="#comment-7546" rel="nofollow">@Doug Burns</a> </p>
<p>Cool! Was it 11g+? In 10g (at least up to 10.2.0.3 or .4 the mutex waiters didn&#8217;t populate blocking session)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Doug Burns</title>
		<link>http://blog.tanelpoder.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/comment-page-2/#comment-7546</link>
		<dc:creator>Doug Burns</dc:creator>
		<pubDate>Tue, 28 Jun 2011 14:59:24 +0000</pubDate>
		<guid isPermaLink="false">http://tanelpoder.wordpress.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/#comment-7546</guid>
		<description>&lt;a href=&quot;#comment-7540&quot; rel=&quot;nofollow&quot;&gt;@Tanel Poder&lt;/a&gt; 
Thanks Tanel. In the end, it was a simple case of using blocking session info in ASH. Should probably have looked there first, to be honest!</description>
		<content:encoded><![CDATA[<p><a href="#comment-7540" rel="nofollow">@Tanel Poder</a><br />
Thanks Tanel. In the end, it was a simple case of using blocking session info in ASH. Should probably have looked there first, to be honest!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tanel Poder</title>
		<link>http://blog.tanelpoder.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/comment-page-2/#comment-7541</link>
		<dc:creator>Tanel Poder</dc:creator>
		<pubDate>Mon, 27 Jun 2011 12:53:26 +0000</pubDate>
		<guid isPermaLink="false">http://tanelpoder.wordpress.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/#comment-7541</guid>
		<description>&lt;a href=&quot;#comment-7514&quot; rel=&quot;nofollow&quot;&gt;@shan chao&lt;/a&gt; 

The P1 is the hash value of the LIBRARY CACHE OBJECT accessed. Not just SQL cursors only, but any library cache object. V$SQL only show SQL child cursors, but no other library cache object. You&#039;ll have to query X$KGLOB by KGLNAHSH to see all library cache objects.</description>
		<content:encoded><![CDATA[<p><a href="#comment-7514" rel="nofollow">@shan chao</a> </p>
<p>The P1 is the hash value of the LIBRARY CACHE OBJECT accessed. Not just SQL cursors only, but any library cache object. V$SQL only show SQL child cursors, but no other library cache object. You&#8217;ll have to query X$KGLOB by KGLNAHSH to see all library cache objects.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tanel Poder</title>
		<link>http://blog.tanelpoder.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/comment-page-2/#comment-7540</link>
		<dc:creator>Tanel Poder</dc:creator>
		<pubDate>Mon, 27 Jun 2011 12:49:54 +0000</pubDate>
		<guid isPermaLink="false">http://tanelpoder.wordpress.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/#comment-7540</guid>
		<description>&lt;a href=&quot;#comment-7539&quot; rel=&quot;nofollow&quot;&gt;@Doug Burns&lt;/a&gt; 

Well, library cache issues is a wider topic - such as determining whether/why existing cursors aren&#039;t reused (nonshared.sql etc).

The starting point of troubleshooting would be the same in 10g and 11g, regardless of latches or mutexes. You&#039;d start from looking into P1 of the library cache related wait events - and in case of latches you can use latchprof, but with mutexes you can either use v$mutex_sleep_history (mutexprof.sql) or even easier, use the blocking session ID (in 11g, the mutex waiter resolves and populates blocking session ID in v$session/ASH) and see what that session was doing. So, the starting point - wait interface, p1,p2 - is more important and may be enough for diagnosing the issue... I use latchprof only in more advanced cases where wait interface and ASH doesn&#039;t give enough detail...

Yep, in 10g, all the library cache latches are still there and used for protecting PL/SQL and other library cache objects, while only the cursor pinning is protected by mutexes (cursor lookup, loading etc is still protected by latches).</description>
		<content:encoded><![CDATA[<p><a href="#comment-7539" rel="nofollow">@Doug Burns</a> </p>
<p>Well, library cache issues is a wider topic &#8211; such as determining whether/why existing cursors aren&#8217;t reused (nonshared.sql etc).</p>
<p>The starting point of troubleshooting would be the same in 10g and 11g, regardless of latches or mutexes. You&#8217;d start from looking into P1 of the library cache related wait events &#8211; and in case of latches you can use latchprof, but with mutexes you can either use v$mutex_sleep_history (mutexprof.sql) or even easier, use the blocking session ID (in 11g, the mutex waiter resolves and populates blocking session ID in v$session/ASH) and see what that session was doing. So, the starting point &#8211; wait interface, p1,p2 &#8211; is more important and may be enough for diagnosing the issue&#8230; I use latchprof only in more advanced cases where wait interface and ASH doesn&#8217;t give enough detail&#8230;</p>
<p>Yep, in 10g, all the library cache latches are still there and used for protecting PL/SQL and other library cache objects, while only the cursor pinning is protected by mutexes (cursor lookup, loading etc is still protected by latches).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Doug Burns</title>
		<link>http://blog.tanelpoder.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/comment-page-2/#comment-7539</link>
		<dc:creator>Doug Burns</dc:creator>
		<pubDate>Mon, 27 Jun 2011 10:27:57 +0000</pubDate>
		<guid isPermaLink="false">http://tanelpoder.wordpress.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/#comment-7539</guid>
		<description>Hi Tanel,

A question and an observation.

Question: Does this post imply that latchprof.sql can&#039;t really be used to diagnose library cache issues in 11g because they&#039;re protected by mutexes and not latches?

Observation: The Performance Page and Top Activity Page in OEM 10.2.0.5 still shows the old style latch wait events</description>
		<content:encoded><![CDATA[<p>Hi Tanel,</p>
<p>A question and an observation.</p>
<p>Question: Does this post imply that latchprof.sql can&#8217;t really be used to diagnose library cache issues in 11g because they&#8217;re protected by mutexes and not latches?</p>
<p>Observation: The Performance Page and Top Activity Page in OEM 10.2.0.5 still shows the old style latch wait events</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: shan chao</title>
		<link>http://blog.tanelpoder.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/comment-page-2/#comment-7514</link>
		<dc:creator>shan chao</dc:creator>
		<pubDate>Sun, 19 Jun 2011 13:20:29 +0000</pubDate>
		<guid isPermaLink="false">http://tanelpoder.wordpress.com/2008/08/03/library-cache-latches-gone-in-oracle-11g/#comment-7514</guid>
		<description>Hi, tanel

  I read your ppt oraclelatchandmutexcontentiontroubleshooting-110228084020-phpapp01.pdf and try to make use of p1/p2/p3 of wait event &quot;library cache: mutex X&quot;.

  They&#039;re something like 2185117608/0/85, 2185117608/0/106 ,2185117608/24859270709248/82. As i know how p3 works, Parameter1 (idn) and Parameter 2 (value) can&#039;t help at all. There is no sql with hashvalue 2185117608(if it&#039;s cursor: pin or cursor: mutex, yes this is hash value). 

  We&#039;re seeing high library cache: mutex X and library cache lock after we finished exchanging partition of one partition table.

  Is there any simple way to simulate the mutex on a test env? I can get library cache lock/pin easily by compiling package or add primary key to a table, however i found it hard to get mutex on my test env.</description>
		<content:encoded><![CDATA[<p>Hi, tanel</p>
<p>  I read your ppt oraclelatchandmutexcontentiontroubleshooting-110228084020-phpapp01.pdf and try to make use of p1/p2/p3 of wait event &#8220;library cache: mutex X&#8221;.</p>
<p>  They&#8217;re something like 2185117608/0/85, 2185117608/0/106 ,2185117608/24859270709248/82. As i know how p3 works, Parameter1 (idn) and Parameter 2 (value) can&#8217;t help at all. There is no sql with hashvalue 2185117608(if it&#8217;s cursor: pin or cursor: mutex, yes this is hash value). </p>
<p>  We&#8217;re seeing high library cache: mutex X and library cache lock after we finished exchanging partition of one partition table.</p>
<p>  Is there any simple way to simulate the mutex on a test env? I can get library cache lock/pin easily by compiling package or add primary key to a table, however i found it hard to get mutex on my test env.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

