<?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: Transformation and Optimisation</title>
	<atom:link href="http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/feed/" rel="self" type="application/rss+xml" />
	<link>http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/</link>
	<description>Just another Oracle weblog</description>
	<lastBuildDate>Fri, 24 May 2013 13:27:07 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Upgrades &#171; Oracle Scratchpad</title>
		<link>http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-50996</link>
		<dc:creator><![CDATA[Upgrades &#171; Oracle Scratchpad]]></dc:creator>
		<pubDate>Thu, 25 Oct 2012 22:27:48 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-50996</guid>
		<description><![CDATA[[...] much into these numbers &#8211; but one of the side effects of an upgrade to 10g is the impact of &#8220;Cost Based Query Transformation&#8221; and the clever (sometimes too clever) things it does to execution plans; and three of the top four [...]]]></description>
		<content:encoded><![CDATA[<p>[...] much into these numbers &#8211; but one of the side effects of an upgrade to 10g is the impact of &#8220;Cost Based Query Transformation&#8221; and the clever (sometimes too clever) things it does to execution plans; and three of the top four [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Subquery Factoring (4) &#171; Oracle Scratchpad</title>
		<link>http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-37276</link>
		<dc:creator><![CDATA[Subquery Factoring (4) &#171; Oracle Scratchpad]]></dc:creator>
		<pubDate>Mon, 13 Sep 2010 18:40:34 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-37276</guid>
		<description><![CDATA[[...] Articles:  Complex View Merging Subquery Factoring Pushing Predicates (1) Pushing Predicates [...]]]></description>
		<content:encoded><![CDATA[<p>[...] Articles:  Complex View Merging Subquery Factoring Pushing Predicates (1) Pushing Predicates [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Group By &#171; Oracle Scratchpad</title>
		<link>http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-32437</link>
		<dc:creator><![CDATA[Group By &#171; Oracle Scratchpad]]></dc:creator>
		<pubDate>Sun, 21 Dec 2008 21:06:17 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-32437</guid>
		<description><![CDATA[[...] Filed under: CBO &#8212; Jonathan Lewis @ 9:05 pm UTC Dec 21,2008   In an earlier article on Cost Based Query Transformation, I showed an example of &#8220;complex view merging&#8221; where the optimizer turned an in-line [...]]]></description>
		<content:encoded><![CDATA[<p>[...] Filed under: CBO &#8212; Jonathan Lewis @ 9:05 pm UTC Dec 21,2008   In an earlier article on Cost Based Query Transformation, I showed an example of &#8220;complex view merging&#8221; where the optimizer turned an in-line [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Manual Optimisation &#171; Oracle Scratchpad</title>
		<link>http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-30933</link>
		<dc:creator><![CDATA[Manual Optimisation &#171; Oracle Scratchpad]]></dc:creator>
		<pubDate>Fri, 02 May 2008 11:44:06 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-30933</guid>
		<description><![CDATA[[...] minimise the risk of Oracle doing something &#8220;clever&#8221; to spoil my plan. 10g introduces cost-based query transformation - and has far more options for unwrapping any clever tricks you introduce to SQL; so if [...]]]></description>
		<content:encoded><![CDATA[<p>[...] minimise the risk of Oracle doing something &#8220;clever&#8221; to spoil my plan. 10g introduces cost-based query transformation &#8211; and has far more options for unwrapping any clever tricks you introduce to SQL; so if [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alvaro</title>
		<link>http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-20859</link>
		<dc:creator><![CDATA[Alvaro]]></dc:creator>
		<pubDate>Mon, 17 Sep 2007 21:05:40 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-20859</guid>
		<description><![CDATA[Hello all,

Those who will to stay in 9.2 for a long time :-( ; anybody has noticed if Oracle will at some point backport some cbqt funcionality to 9.2.0.8? (plead for costing unnesting at least)]]></description>
		<content:encoded><![CDATA[<p>Hello all,</p>
<p>Those who will to stay in 9.2 for a long time :-( ; anybody has noticed if Oracle will at some point backport some cbqt funcionality to 9.2.0.8? (plead for costing unnesting at least)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonathan Lewis</title>
		<link>http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-19772</link>
		<dc:creator><![CDATA[Jonathan Lewis]]></dc:creator>
		<pubDate>Mon, 27 Aug 2007 21:03:07 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-19772</guid>
		<description><![CDATA[Viveshar, I haven&#039;t seen an example exactly like this but I am prepared to believe that it might have happened. 

The modified query looks like an option that the 10g optimizer would have investigated as a viable rewrite of the original query; so in principle I see no reason why it shouldn&#039;t end up as the query sent to the 9i instance.]]></description>
		<content:encoded><![CDATA[<p>Viveshar, I haven&#8217;t seen an example exactly like this but I am prepared to believe that it might have happened. </p>
<p>The modified query looks like an option that the 10g optimizer would have investigated as a viable rewrite of the original query; so in principle I see no reason why it shouldn&#8217;t end up as the query sent to the 9i instance.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: viveshar</title>
		<link>http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-19570</link>
		<dc:creator><![CDATA[viveshar]]></dc:creator>
		<pubDate>Sat, 25 Aug 2007 16:50:19 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-19570</guid>
		<description><![CDATA[Hi Jonathan,

I have seen a peculiar issue. Infact, I will say that I have not seen this but have heard from one of my fellow dba. One of the query executed on 10.2.0.1 fetches the data from 9206 using db link. The Query executed on 10.2.0.1 when goes to 9206, the query text changes. I understand that the Query is internally rewritten only to check and understand the execution plan (comple view merging etc.) but v$sqlarea will report the original statement executed. In this case, the Query X changes to Y. The query is similar to the pasted below :

Query Executed from 10.2.0.1

select e.empno, e.ename, d.dname, e.sal
from emp@o9i e, dept@o9i d
where e.deptno = d.deptno
and   e.sal = (select max(ep.sal) from emp@o9i ep where ep.deptno = d.deptno)

Query seen on 9206

select a1.empno, a1.ename, a3.dname, a1.sal
from (select max(sal) sal, deptno from emp group by deptno) a2,
emp a1, dept a3
where a1.deptno = a3.deptno
and   a1.sal = a2.sal
and   a3.deptno = a2.deptno

Both the query fetch the same output, but since, the emp table is huge, the second query takes time to execute. Can Oracle Optimizer rewrite the query and change the entire text ?

I tried to simulate this and could not find this to be true. The alias name etc. are changed as a1, a2 etc when the query is executed from 10g and passed on to 9i.

Regards]]></description>
		<content:encoded><![CDATA[<p>Hi Jonathan,</p>
<p>I have seen a peculiar issue. Infact, I will say that I have not seen this but have heard from one of my fellow dba. One of the query executed on 10.2.0.1 fetches the data from 9206 using db link. The Query executed on 10.2.0.1 when goes to 9206, the query text changes. I understand that the Query is internally rewritten only to check and understand the execution plan (comple view merging etc.) but v$sqlarea will report the original statement executed. In this case, the Query X changes to Y. The query is similar to the pasted below :</p>
<p>Query Executed from 10.2.0.1</p>
<p>select e.empno, e.ename, d.dname, e.sal<br />
from emp@o9i e, dept@o9i d<br />
where e.deptno = d.deptno<br />
and   e.sal = (select max(ep.sal) from emp@o9i ep where ep.deptno = d.deptno)</p>
<p>Query seen on 9206</p>
<p>select a1.empno, a1.ename, a3.dname, a1.sal<br />
from (select max(sal) sal, deptno from emp group by deptno) a2,<br />
emp a1, dept a3<br />
where a1.deptno = a3.deptno<br />
and   a1.sal = a2.sal<br />
and   a3.deptno = a2.deptno</p>
<p>Both the query fetch the same output, but since, the emp table is huge, the second query takes time to execute. Can Oracle Optimizer rewrite the query and change the entire text ?</p>
<p>I tried to simulate this and could not find this to be true. The alias name etc. are changed as a1, a2 etc when the query is executed from 10g and passed on to 9i.</p>
<p>Regards</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: 10g Subquery Unnesting Anomalies : Ardent Performance Computing</title>
		<link>http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-15618</link>
		<dc:creator><![CDATA[10g Subquery Unnesting Anomalies : Ardent Performance Computing]]></dc:creator>
		<pubDate>Wed, 18 Jul 2007 10:30:55 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-15618</guid>
		<description><![CDATA[[...] Is Jonathan Lewis perpetuating a myth that Oracle 10g will unnest subqueries based on cost?! [...]]]></description>
		<content:encoded><![CDATA[<p>[...] Is Jonathan Lewis perpetuating a myth that Oracle 10g will unnest subqueries based on cost?! [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Vadim Tropashko</title>
		<link>http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-3866</link>
		<dc:creator><![CDATA[Vadim Tropashko]]></dc:creator>
		<pubDate>Thu, 08 Mar 2007 18:43:34 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-3866</guid>
		<description><![CDATA[Required reading:

http://delivery.acm.org/10.1145/1170000/1164215/p1026-ahmed.pdf?key1=1164215&amp;key2=7529733711&amp;coll=&amp;dl=ACM&amp;CFID=15151515&amp;CFTOKEN=6184618]]></description>
		<content:encoded><![CDATA[<p>Required reading:</p>
<p><a href="http://delivery.acm.org/10.1145/1170000/1164215/p1026-ahmed.pdf?key1=1164215&#038;key2=7529733711&#038;coll=&#038;dl=ACM&#038;CFID=15151515&#038;CFTOKEN=6184618" rel="nofollow">http://delivery.acm.org/10.1145/1170000/1164215/p1026-ahmed.pdf?key1=1164215&#038;key2=7529733711&#038;coll=&#038;dl=ACM&#038;CFID=15151515&#038;CFTOKEN=6184618</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anurag Varma</title>
		<link>http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-3863</link>
		<dc:creator><![CDATA[Anurag Varma]]></dc:creator>
		<pubDate>Thu, 08 Mar 2007 15:31:54 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/03/08/transformation-and-optimisation/#comment-3863</guid>
		<description><![CDATA[... adding to the comment above. I also seem to be seeing this behavior (Query transformation disabled) when doing a &quot;INSERT into  as select&quot; in 10.2.0.2. So I was suspecting that Query transformation is not only disabled in CTAS, but also in insert into  as select...

Thanks,
Anurag]]></description>
		<content:encoded><![CDATA[<p>&#8230; adding to the comment above. I also seem to be seeing this behavior (Query transformation disabled) when doing a &#8220;INSERT into  as select&#8221; in 10.2.0.2. So I was suspecting that Query transformation is not only disabled in CTAS, but also in insert into  as select&#8230;</p>
<p>Thanks,<br />
Anurag</p>
]]></content:encoded>
	</item>
</channel>
</rss>
