<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Rules for Hinting</title>
	<atom:link href="http://jonathanlewis.wordpress.com/2008/05/02/rules-for-hinting/feed/" rel="self" type="application/rss+xml" />
	<link>http://jonathanlewis.wordpress.com/2008/05/02/rules-for-hinting/</link>
	<description>Just another Oracle weblog</description>
	<lastBuildDate>Mon, 20 May 2013 17:10:14 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Log Buffer #96: A Carnival of the Vanities for DBAs</title>
		<link>http://jonathanlewis.wordpress.com/2008/05/02/rules-for-hinting/#comment-53531</link>
		<dc:creator><![CDATA[Log Buffer #96: A Carnival of the Vanities for DBAs]]></dc:creator>
		<pubDate>Thu, 14 Feb 2013 13:19:16 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=355#comment-53531</guid>
		<description><![CDATA[[...] On his Oracle Scratchpad, Jonathan Lewis compiles his rules for hinting. [...]]]></description>
		<content:encoded><![CDATA[<p>[...] On his Oracle Scratchpad, Jonathan Lewis compiles his rules for hinting. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonathan Lewis</title>
		<link>http://jonathanlewis.wordpress.com/2008/05/02/rules-for-hinting/#comment-40379</link>
		<dc:creator><![CDATA[Jonathan Lewis]]></dc:creator>
		<pubDate>Wed, 20 Apr 2011 13:27:49 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=355#comment-40379</guid>
		<description><![CDATA[Timur,

Thanks for the note and link.]]></description>
		<content:encoded><![CDATA[<p>Timur,</p>
<p>Thanks for the note and link.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Timur Akhmadeev</title>
		<link>http://jonathanlewis.wordpress.com/2008/05/02/rules-for-hinting/#comment-40233</link>
		<dc:creator><![CDATA[Timur Akhmadeev]]></dc:creator>
		<pubDate>Thu, 07 Apr 2011 17:35:48 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=355#comment-40233</guid>
		<description><![CDATA[&lt;blockquote&gt;a) APPEND changes in 11.2 – it now works for some cases where it didn’t previously (viz: values())&lt;/blockquote&gt;
I believe that was a bug in 11.1 which has been fixed in 11.2, and now there&#039;s separate &lt;a href=&quot;http://download.oracle.com/docs/cd/E11882_01/server.112/e17118/sql_elements006.htm#SQLRF51109&quot; rel=&quot;nofollow&quot;&gt;APPEND_VALUES&lt;a&gt; hint for that.]]></description>
		<content:encoded><![CDATA[<blockquote><p>a) APPEND changes in 11.2 – it now works for some cases where it didn’t previously (viz: values())</p></blockquote>
<p>I believe that was a bug in 11.1 which has been fixed in 11.2, and now there&#8217;s separate <a href="http://download.oracle.com/docs/cd/E11882_01/server.112/e17118/sql_elements006.htm#SQLRF51109" rel="nofollow">APPEND_VALUES</a><a> hint for that.</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonathan Lewis</title>
		<link>http://jonathanlewis.wordpress.com/2008/05/02/rules-for-hinting/#comment-40232</link>
		<dc:creator><![CDATA[Jonathan Lewis]]></dc:creator>
		<pubDate>Thu, 07 Apr 2011 15:27:58 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=355#comment-40232</guid>
		<description><![CDATA[Wolfgang,

An incoming ping has just brought my attention back to this note, and I can&#039;t help but point out that:
a) APPEND changes in 11.2 - it now works for some cases where it didn&#039;t previously (viz: values())
b) Dynamic sampling has a changed algorithm - which could make the samples sufficiently different that plans change
c) Parallel has introduced some new options for determining how parallel and what to do, so plans might change and run-time characteristics might change. (direct path or cached - either way)
d) cursor_sharing_exact hasn&#039;t changed and can be very useful - but you shouldn&#039;t have set the cursor_sharing parameter from its default in the first place: it&#039;s a case of two wrongs possibly making a right.]]></description>
		<content:encoded><![CDATA[<p>Wolfgang,</p>
<p>An incoming ping has just brought my attention back to this note, and I can&#8217;t help but point out that:<br />
a) APPEND changes in 11.2 &#8211; it now works for some cases where it didn&#8217;t previously (viz: values())<br />
b) Dynamic sampling has a changed algorithm &#8211; which could make the samples sufficiently different that plans change<br />
c) Parallel has introduced some new options for determining how parallel and what to do, so plans might change and run-time characteristics might change. (direct path or cached &#8211; either way)<br />
d) cursor_sharing_exact hasn&#8217;t changed and can be very useful &#8211; but you shouldn&#8217;t have set the cursor_sharing parameter from its default in the first place: it&#8217;s a case of two wrongs possibly making a right.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: &#8220;The Correct Plan&#8221; &#171; OraStory</title>
		<link>http://jonathanlewis.wordpress.com/2008/05/02/rules-for-hinting/#comment-40231</link>
		<dc:creator><![CDATA[&#8220;The Correct Plan&#8221; &#171; OraStory]]></dc:creator>
		<pubDate>Thu, 07 Apr 2011 13:03:06 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=355#comment-40231</guid>
		<description><![CDATA[[...] And hinting begets more hinting. See Rules for Hinting. [...]]]></description>
		<content:encoded><![CDATA[<p>[...] And hinting begets more hinting. See Rules for Hinting. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Problem plans &#171; OraStory</title>
		<link>http://jonathanlewis.wordpress.com/2008/05/02/rules-for-hinting/#comment-35232</link>
		<dc:creator><![CDATA[Problem plans &#171; OraStory]]></dc:creator>
		<pubDate>Fri, 15 Jan 2010 13:29:59 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=355#comment-35232</guid>
		<description><![CDATA[[...] Jonathan Lewis points out, it&#8217;s very difficult to do it [...]]]></description>
		<content:encoded><![CDATA[<p>[...] Jonathan Lewis points out, it&#8217;s very difficult to do it [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Oracle 11G Result Cache in the Real World</title>
		<link>http://jonathanlewis.wordpress.com/2008/05/02/rules-for-hinting/#comment-31026</link>
		<dc:creator><![CDATA[Oracle 11G Result Cache in the Real World]]></dc:creator>
		<pubDate>Tue, 13 May 2008 19:46:19 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=355#comment-31026</guid>
		<description><![CDATA[[...] All it says is that you have to have repeatedly-executed functions and queries to get faster response time. It says nothing about what kind of queries or functions. It also suggests that the result cache should be used database-wide or shouldn&#8217;t be used at all (which is perfectly sound according to Jonathan Lewis&#8217;s Rules for Hinting). [...]]]></description>
		<content:encoded><![CDATA[<p>[...] All it says is that you have to have repeatedly-executed functions and queries to get faster response time. It says nothing about what kind of queries or functions. It also suggests that the result cache should be used database-wide or shouldn&#8217;t be used at all (which is perfectly sound according to Jonathan Lewis&#8217;s Rules for Hinting). [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stew Stryker</title>
		<link>http://jonathanlewis.wordpress.com/2008/05/02/rules-for-hinting/#comment-31012</link>
		<dc:creator><![CDATA[Stew Stryker]]></dc:creator>
		<pubDate>Mon, 12 May 2008 21:22:36 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=355#comment-31012</guid>
		<description><![CDATA[This has to be one of the most depressing posts I&#039;ve seen in a long time.  What&#039;s the point of having this great feature if the gurus that know Oracle best (or at least those who blog) tell you to avoid using them unless absolutely necessary?

I&#039;ve used some very basic hints (e.g. INDEX and ROWID) with good results, but only put them into production after careful testing.  And we follow your rule about reviewing their results after each Oracle upgrade (testing all code).

How am I going to show my peers that I know lots of Oracle tricks with hints???  ;-)

Groan.]]></description>
		<content:encoded><![CDATA[<p>This has to be one of the most depressing posts I&#8217;ve seen in a long time.  What&#8217;s the point of having this great feature if the gurus that know Oracle best (or at least those who blog) tell you to avoid using them unless absolutely necessary?</p>
<p>I&#8217;ve used some very basic hints (e.g. INDEX and ROWID) with good results, but only put them into production after careful testing.  And we follow your rule about reviewing their results after each Oracle upgrade (testing all code).</p>
<p>How am I going to show my peers that I know lots of Oracle tricks with hints???  ;-)</p>
<p>Groan.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Manual Optimisation - 2 &#171; Oracle Scratchpad</title>
		<link>http://jonathanlewis.wordpress.com/2008/05/02/rules-for-hinting/#comment-30988</link>
		<dc:creator><![CDATA[Manual Optimisation - 2 &#171; Oracle Scratchpad]]></dc:creator>
		<pubDate>Fri, 09 May 2008 13:16:08 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=355#comment-30988</guid>
		<description><![CDATA[[...] not a sufficiently powerful argument to stop you from using it - it&#8217;s just a reminder that (as with all code that&#8217;s hinted) you have to document and manage the code [...]]]></description>
		<content:encoded><![CDATA[<p>[...] not a sufficiently powerful argument to stop you from using it &#8211; it&#8217;s just a reminder that (as with all code that&#8217;s hinted) you have to document and manage the code [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: lascoltodelvenerdi</title>
		<link>http://jonathanlewis.wordpress.com/2008/05/02/rules-for-hinting/#comment-30962</link>
		<dc:creator><![CDATA[lascoltodelvenerdi]]></dc:creator>
		<pubDate>Mon, 05 May 2008 13:41:53 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=355#comment-30962</guid>
		<description><![CDATA[So...

Hinting and &quot;unhinting&quot; is all about invoicing! :lol:

Hints are double-edge knifes.
Not only they can &quot;harm you&quot; when you upgrade, but if table stats change a lot, they can give you sub-optimal execution plans...or worse.]]></description>
		<content:encoded><![CDATA[<p>So&#8230;</p>
<p>Hinting and &#8220;unhinting&#8221; is all about invoicing! :lol:</p>
<p>Hints are double-edge knifes.<br />
Not only they can &#8220;harm you&#8221; when you upgrade, but if table stats change a lot, they can give you sub-optimal execution plans&#8230;or worse.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
