<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Oracle Admins weblog</title>
	<atom:link href="http://oracleadmins.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://oracleadmins.wordpress.com</link>
	<description>moved to http://www.nioug.org</description>
	<lastBuildDate>Thu, 13 Nov 2008 11:53:42 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='oracleadmins.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/8399aa31412893939d7909bd012d88bc?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>Oracle Admins weblog</title>
		<link>http://oracleadmins.wordpress.com</link>
	</image>
			<item>
		<title>We have moved&#8230;</title>
		<link>http://oracleadmins.wordpress.com/2008/11/13/we-have-moved/</link>
		<comments>http://oracleadmins.wordpress.com/2008/11/13/we-have-moved/#comments</comments>
		<pubDate>Thu, 13 Nov 2008 11:53:42 +0000</pubDate>
		<dc:creator>Amardeep Sidhu</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[moved]]></category>

		<guid isPermaLink="false">http://oracleadmins.wordpress.com/?p=97</guid>
		<description><![CDATA[With North India Oracle User Group (NIOUG) coming into existence we have moved this blog to NIOUG website. The new URL for this blog is http://orablog.nioug.org.
Please point your feeds to the new URL !
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=97&subd=oracleadmins&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>With <a href="http://www.nioug.org" target="_blank">North India Oracle User Group</a> (NIOUG) coming into existence we have moved this blog to NIOUG website. The new URL for this blog is <a href="http://twitter.com/nioug" target="_blank">http://orablog.nioug.org</a>.</p>
<p>Please point your feeds to the new URL !</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oracleadmins.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oracleadmins.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oracleadmins.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oracleadmins.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oracleadmins.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oracleadmins.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oracleadmins.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oracleadmins.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oracleadmins.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oracleadmins.wordpress.com/97/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=97&subd=oracleadmins&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oracleadmins.wordpress.com/2008/11/13/we-have-moved/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Sidhu</media:title>
		</media:content>
	</item>
		<item>
		<title>MOSC&#8230;.</title>
		<link>http://oracleadmins.wordpress.com/2008/11/01/mosc/</link>
		<comments>http://oracleadmins.wordpress.com/2008/11/01/mosc/#comments</comments>
		<pubDate>Sat, 01 Nov 2008 06:51:34 +0000</pubDate>
		<dc:creator>Aman Sharma</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[forums]]></category>
		<category><![CDATA[upgrade]]></category>

		<guid isPermaLink="false">http://oracleadmins.wordpress.com/?p=95</guid>
		<description><![CDATA[Change is always welcome. Its the sign that some thing is moving, some thing is getting improved. With change, there are always chances for new ideas to get born and groom. By constantly changing the way things are working, we always can make our work, life more better. To sum up, to grow, become more [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=95&subd=oracleadmins&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Change is always welcome. Its the sign that some thing is moving, some thing is getting improved. With change, there are always chances for new ideas to get born and groom. By constantly changing the way things are working, we always can make our work, life more better. To sum up, to grow, become more error-free, a change is required.<br />
But as it is said, there is nothing always black or white. There are always exceptions to every rule. I mentioned above change as its need in our lives. Does it mean we should get married to a new person every other year to make our lives more better ? Heck no! And there are some rules which work forever. One out of those rules is, if some thing is not broken , don&#8217;t try to fix it. We need change but it should be done if there is a need to bring it. It should not be done just to make sure that no one sits idle and there should be some work for people to do, doesn&#8217;t matter its useless work too.<br />
When OTN Forums( http://forums.oracle.com) got upgraded( or degraded, whatever you may want to call it, suit yourself) and the new point system got introduced, there was a huge hue and cry among many people. Some liked it , some hated it, some didn&#8217;t bother. Many blog posts were written talking about its pros/cons, many threads were created over Forums to understand/protest/suggest about it. I  am not going to write another post talking about the same thing. I chose to be neutral about it. There is no need to shout over something which we can&#8217;t change. I like/dislike point system, it won&#8217;t make any difference to OTN team and in their decision to bring it or discard it. Infact, I guess with some exceptions like repeated posts to get points, people not bothering about giving points to right answers, this point system have proved to be good. I know couple of posters whose question count is in thousands. With the previous method of making someone a top user with only number of posts, they could had become  top user as well with no benefit to others. They just ask questions, don&#8217;t contribute by helping others and that&#8217;s what  a top user(s) should do. So with point system, only &#8220;noisy&#8221; people got sacked from the top user listing. Though its not the NYSE listing ,dropping from which can give some one  a heart attack but still, now the list is having those who really spend time to give answers. Okay, there are still debates, arguements about some posters that they don&#8217;t do the right thing and have attained points by repeated posts. But I guess, there is no system which is totally error-free. So to sum up , this change over the OTN Forums was a welcome change, atleast for me( and if I don&#8217;t mention the sluggish performance of forums afterwards, another topic and may be another day).<br />
But one ketchup doesn&#8217;t suit all the dishes. I was browsing over Twitter and I read a link which Eddie posted,<br />
http://www.dba-oracle.com/oracle_news/news_oracle_support_community.htm<br />
WTH! So it means that now over Metalink too, there will be point system? So what would be the metalink support analysts will do? What if some one  who is not from Oracle support attains more points than anyone ?Should we start listening to him/her and leave what Support people say as they don&#8217;t have &#8220;enough points&#8221; to prove that they are right? There is so much debate that people are striving to become top users over OTN forums. Now what would happen, if some one from Support  or not from Support would come and try the same?I have not seen the interface of this MOSC yet but if its the same like OTN than what if someone finds an answer from someone rude and reports it as abuse? Would that person be banned from Metalink as one can be from OTN? Not to forget about the requirement to use Flash to use the new interface! Some thing which didn&#8217;t require any fix got &#8220;fixed&#8221; and now everyone is in a &#8220;fix&#8221; what would happen next?<br />
I don&#8217;t think that this was needed at all. There may be something better in someone&#8217;s mind who suggested , implemented all this. But I believe, some times , simple is better. I still like my normal Nokia8210 the most, doesn&#8217;t matter what Iphone has brought up? Not so modern may be I am!<br />
Cheers<br />
Aman&#8230;.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oracleadmins.wordpress.com/95/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oracleadmins.wordpress.com/95/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oracleadmins.wordpress.com/95/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oracleadmins.wordpress.com/95/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oracleadmins.wordpress.com/95/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oracleadmins.wordpress.com/95/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oracleadmins.wordpress.com/95/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oracleadmins.wordpress.com/95/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oracleadmins.wordpress.com/95/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oracleadmins.wordpress.com/95/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=95&subd=oracleadmins&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oracleadmins.wordpress.com/2008/11/01/mosc/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">AmanAlchemist</media:title>
		</media:content>
	</item>
		<item>
		<title>Shared_IO_Pool In SecureFiles Of 11g&#8230;.</title>
		<link>http://oracleadmins.wordpress.com/2008/10/08/shared_io_pool-in-securefiles-of-11g/</link>
		<comments>http://oracleadmins.wordpress.com/2008/10/08/shared_io_pool-in-securefiles-of-11g/#comments</comments>
		<pubDate>Wed, 08 Oct 2008 19:43:38 +0000</pubDate>
		<dc:creator>Aman Sharma</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://oracleadmins.wordpress.com/?p=86</guid>
		<description><![CDATA[Securefiles in Oracle 11gR1 is a complete reengineered thing. Traditional lobs didn&#8217;t present so well themselves in the long run of business due to the limiation of their sizes and other factors which are pretty well documented in Oracle docs. So Oracle has given us in 11g Securefiles, LOBs on steroids if I can say [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=86&subd=oracleadmins&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/intro.htm#CNCPT1918">Securefiles</a> in Oracle 11gR1 is a complete reengineered thing. Traditional lobs didn&#8217;t present so well themselves in the long run of business due to the limiation of their sizes and other factors which are pretty well documented in Oracle docs. So Oracle has given us in 11g Securefiles, LOBs on steroids if I can say so.<br />
Well this blog post is not about Securefiles. Official docs do a pretty good job in explaining their working and other stuff and there are tons of other web sites which have done that already a good job explaining them eg you can read Tim Hall&#8217;s excellent article about the same <a href="http://www.oracle-base.com/articles/11g/SecureFiles_11gR1.php"> here </a>. This blog post is about a parameter that Oracle has given for the better working of Securefiles, yup correct, Shared_io_pool.<br />
Shared_io_pool is added in the Oracle architecture to support large IOs. Normally large IO&#8217;s and if I can say, sort of like private IOs are best done using PGA with direct path access. When Securefiles are created with the options <a href="http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14249/adlob_tables.htm#sthref191"> Cache </a> which is actually borrowed from older cousin Basicfile aka LOBs only , they are read into the Buffer Cache which makes the access of these lobs more faster. This option is not there in Securefiles actually and hence is the reason for the 10g doc link. Using Buffer Cache is a good option but it has couple of issues as well. First and foremost is that due to the large size of lobs, they may go and kick the heck out all other tiny miny buffers from the buffer cache. Now if we are really using Lobs so we won&#8217;t mind doing this too I guess. But still, this can be not-so-good issue for the other small lookup table&#8217;s buffers which are thrown out. Another issue can be when we actually don&#8217;t use the Cache at all and go with plain, Nocache option which means , no buffer cache access. So now zero chance of any memory based access for lobs.<br />
In 11g, for Securefiles, Oracle has tried to remove this issue with the introduction of Shared_IO_Pool parameter. This can be used as a shared region to support cached IOs for Securefiles. This parameter&#8217;s default size is mentioned as zero but I couldn&#8217;t find it as zero. I found it of actually some size. I guess the benefit is clear cut. As opposed to private memory given for PGA and to be allocated , this is a system level stuff so its more easy to give to everyone.<br />
Lets see this parameter, starting from &#8220;normal&#8221; views </p>
<pre>
<pre class="brush: css;">
SQL&gt; select  * from V$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
PL/SQL Release 11.1.0.6.0 - Production
CORE    11.1.0.6.0      Production
TNS for 32-bit Windows: Version 11.1.0.6.0 - Production
NLSRTL Version 11.1.0.6.0 - Production

SQL&gt; select pool,name,bytes from V$sgastat where lower(name) like '%shared%';

POOL         NAME                            BYTES
------------ -------------------------- ----------
             shared_io_pool                4194304

shared pool  SHARED SERVERS INFO              3108
             generic process shared st          12
             array 2 for shared redo b          96
             array 1 for shared redo b          96
             ksfd shared pool recovery          24

6 rows selected.

SQL&gt; startup force
ORACLE instance started.

Total System Global Area  188313600 bytes
Fixed Size                  1332048 bytes
Variable Size             134220976 bytes
Database Buffers           46137344 bytes
Redo Buffers                6623232 bytes
Database mounted.
Database opened.
SQL&gt; select pool,name,bytes from V$sgastat where lower(name) like '%shared%';

POOL         NAME                            BYTES
------------ -------------------------- ----------
             shared_io_pool                4194304

shared pool  SHARED SERVERS INFO              3108
             generic process shared st          12
             array 2 for shared redo b          96
             array 1 for shared redo b          96
             ksfd shared pool recovery          24

6 rows selected.

SQL&gt;
</pre>
</pre>
<p>The default of this parameter&#8217;s value in my system is coming out to be 4m. I am not sure that its actually correct or not. I shall install a vanila install of Oracle db and will recheck it. Let&#8217;s try to see a little more deeper about this parameter.<br />
I blogged about learning <a href="http://oracleadmins.wordpress.com/2008/09/25/fixed-tables-definitions-a-new-learning/">  a new trick</a> to find the info about the fixed table structures some time ago. Using the same, let&#8217;s see what comes out for this parameter,</p>
<pre>
<pre class="brush: css;">
SQL&gt; desc v$fixed_view_definition
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 VIEW_NAME                                          VARCHAR2(30)
 VIEW_DEFINITION                                    VARCHAR2(4000)

SQL&gt; set long 500000
SQL&gt; select view_definition from V$fixed_view_definition where view_name like 'V$SGASTAT';

VIEW_DEFINITION
--------------------------------------------------------------------------------
select  POOL, NAME , BYTES from GV$SGASTAT where inst_id = USERENV('Instance')
SQL&gt; set long 500000000
SQL&gt; select view_definition from V$fixed_view_definition where view_name like 'GV$SGASTAT';
VIEW_DEFINITION
--------------------------------------------------------------------------------
select inst_id,'',ksmssnam,ksmsslen from x$ksmfs where ksmsslen&amp;amp;amp;gt;1  union all  se
lect inst_id,'shared pool',ksmssnam, sum(ksmsslen) from x$ksmss    where ksmssle
n&amp;amp;amp;gt;1 group by inst_id, 'shared pool', ksmssnam  union all  select inst_id,'large
pool',ksmssnam, sum(ksmsslen) from x$ksmls    where ksmsslen&amp;amp;amp;gt;1 group by inst_id,
 'large pool', ksmssnam  union all  select inst_id,'java pool',ksmssnam, sum(ksm
sslen) from x$ksmjs    where ksmsslen&amp;amp;amp;gt;1 group by inst_id, 'java pool', ksmssnam
 union all  select inst_id,'streams pool',ksmssnam, sum(ksmsslen) from x$ksmstrs
    where ksmsslen&amp;amp;amp;gt;1 group by inst_id, 'streams pool', ksmssnam
</pre>
</pre>
<p>So there are couple of fixed table structures which are involved here. The structure, X$KSMFS(Kernel Services , Memory Fixed SGA) shows the info of fixed value area in the sga which includes shared_io_pool also,</p>
<pre>
<pre class="brush: css;">
SQL&gt; select ksmssnam,ksmsslen from x$ksmfs
  2  /

KSMSSNAM                     KSMSSLEN
-------------------------- ----------
fixed_sga                     1332048
buffer_cache                 46137344
log_buffer                    6623232
shared_io_pool                4194304
</pre>
</pre>
<p>So the size shown here is also 4m only.<br />
Let&#8217;s see how many other parameters are there related to this?</p>
<pre>
<pre class="brush: css;">
SQL&gt; select ksppinm,ksppstvl,ksppstdvl
  2   from x$ksppcv a,x$ksppi b
  3  where a.indx=b.indx and b.ksppinm like '%shared_io%';

KSPPINM                        KSPPSTVL                       KSPPSTDVL
------------------------------ ------------------------------ ----------------
__shared_io_pool_size          4194304                        4M
_shared_io_pool_size           4194304                        4M
_shared_iop_max_size           536870912                      512M
_shared_io_pool_buf_size       1048576                        1M
_shared_io_pool_debug_trc      0                              0
_shared_io_set_value           FALSE                          FALSE

6 rows selected.

SQL&gt;</pre>
</pre>
<p>So I guess the default size is indeed 4m only. I may be wrong so if you know some thing correct about this, do let me know and I shall correct it. It seems that this parameter can go maximumly to 512m. I am still searching for the other parameter&#8217;s description. Though look straight forward, I shall still wait to get the exact details about them before speaking about them.<br />
Reading <a href="http://www.oracle.com/technology/pub/articles/oracle-database-11g-top-features/11g-securefiles.html">this </a> article from Arup Nanda, it seems oracle has introduced some thing called Lob Cache specifically. Though I am not actually sure that there is some thing like this but it seems that this shared io pool is going to be lined with that in some way. It may be correct or may be not but this is my best guess about it so far.<br />
It seems that Oracle has done some real thought-process before coming out with Securefiles. Let&#8217;s see what else we would see about them in future.<br />
Aman&#8230;.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oracleadmins.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oracleadmins.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oracleadmins.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oracleadmins.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oracleadmins.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oracleadmins.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oracleadmins.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oracleadmins.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oracleadmins.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oracleadmins.wordpress.com/86/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=86&subd=oracleadmins&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oracleadmins.wordpress.com/2008/10/08/shared_io_pool-in-securefiles-of-11g/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">AmanAlchemist</media:title>
		</media:content>
	</item>
		<item>
		<title>Fixed Table&#8217;s Definitions, A New Learning&#8230;.</title>
		<link>http://oracleadmins.wordpress.com/2008/09/25/fixed-tables-definitions-a-new-learning/</link>
		<comments>http://oracleadmins.wordpress.com/2008/09/25/fixed-tables-definitions-a-new-learning/#comments</comments>
		<pubDate>Thu, 25 Sep 2008 08:17:31 +0000</pubDate>
		<dc:creator>Aman Sharma</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://oracleadmins.wordpress.com/?p=81</guid>
		<description><![CDATA[Whenever I used to find out the info of any fixed table(x$) I used to do this by a workaround. I used to set the trace, run the query and see the table&#8217;s name. For example, if we are looking for the V$log&#8217;s fixed table name so I would do something like that ,

&#60;code&#62;
SQL&#62; select [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=81&subd=oracleadmins&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Whenever I used to find out the info of any fixed table(x$) I used to do this by a workaround. I used to set the trace, run the query and see the table&#8217;s name. For example, if we are looking for the V$log&#8217;s fixed table name so I would do something like that ,<br />
<code><br />
&lt;code&gt;</p>
<p>SQL&gt; select * from  V$log;</p>
<p> </p>
<p>Execution Plan</p>
<p>----------------------------------------------------------</p>
<p>Plan hash value: 2536105608</p>
<p> </p>
<p>--------------------------------------------------------------------------------</p>
<p>------------</p>
<p> </p>
<p>| Id  | Operation                | Name            | Rows  | Bytes | Cost (%CPU)</p>
<p>| Time     |</p>
<p> </p>
<p>--------------------------------------------------------------------------------</p>
<p>------------</p>
<p> </p>
<p>|   0 | SELECT STATEMENT         |                 |     1 |   185 |     0   (0)</p>
<p>| 00:00:01 |</p>
<p> </p>
<p>|   1 |  NESTED LOOPS            |                 |     1 |   185 |     0   (0)</p>
<p>| 00:00:01 |</p>
<p> </p>
<p>|*  2 |   FIXED TABLE FULL       | X$KCCLE         |     1 |   136 |     0   (0)</p>
<p>| 00:00:01 |</p>
<p> </p>
<p>|*  3 |   FIXED TABLE FIXED INDEX| X$KCCRT (ind:1) |     1 |    49 |     0   (0)</p>
<p>| 00:00:01 |</p>
<p> </p>
<p>--------------------------------------------------------------------------------</p>
<p>------------<br />
</code></p>
<div>(output trimmed)</div>
<div>&lt;/code&gt;</div>
<div>So I got that x$kccle and x$kccrt are driving it. Well not a bad way IMO.</div>
<div>Till today&#8230;.</div>
<div>When I found this note, </div>
<div><a href="http://www.jlcomp.demon.co.uk/faq/hidden.html">http://www.jlcomp.demon.co.uk/faq/hidden.html</a></div>
<div>So there is actually a view which tells us the description of the fixed tables, cool! So doing the same from here, </div>
<div><code></div>
<div>
<div>SQL&gt; select view_definition</div>
<div>  2  from v$fixed_view_definition where view_name='V$LOG';</div>
<div></div>
<div>VIEW_DEFINITION</div>
<div>--------------------------------------------------------------------------------</div>
<div>select   GROUP# , THREAD# , SEQUENCE# , BYTES , MEMBERS , ARCHIVED , STATUS , FI</div>
<div>RST_CHANGE# , FIRST_TIME from GV$LOG where inst_id = USERENV('Instance')</div>
<div></div>
<div></div>
<div>SQL&gt; select view_definition</div>
<div>  2  from v$fixed_view_definition where view_name='GV$LOG';</div>
<div></div>
<div>VIEW_DEFINITION</div>
<div>--------------------------------------------------------------------------------</div>
<div>select le.inst_id, le.lenum, le.lethr, le.leseq, le.lesiz*le.lebsz, ledup, decod</div>
<div>e(bitand(le.leflg,1),0,'NO','YES'), decode(bitand(le.leflg,24), 8, 'CURRENT',</div>
<div>                         16,'CLEARING',                            24,'CLEARING_</div>
<div>CURRENT',        decode(sign(leseq),0,'UNUSED',        decode(sign((to_number(rt</div>
<div>.rtckp_scn)-to_number(le.lenxs))*        bitand(rt.rtsta,2)),-1,'ACTIVE','INACTI</div>
<div>VE'))), to_number(le.lelos), to_date(le.lelot,'MM/DD/RR HH24:MI:SS','NLS_CALENDA</div>
<div>R=Gregorian') from x$kccle le, x$kccrt rt where le.ledup!=0 and le.lethr=rt.rtnu</div>
<div>m and  le.inst_id = rt.inst_id</div>
<div></div>
<div></div>
<div>SQL&gt;</div>
<div></div>
</div>
<div></div>
<div></code></div>
<div>Voila! We got the fixed table&#8217;s names and much more info about how they are being used. Cool! Its always better to take a straight way rather than a workaround. Learned some thing new today <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> .</div>
<div>Aman&#8230;.</div>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oracleadmins.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oracleadmins.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oracleadmins.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oracleadmins.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oracleadmins.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oracleadmins.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oracleadmins.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oracleadmins.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oracleadmins.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oracleadmins.wordpress.com/81/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=81&subd=oracleadmins&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oracleadmins.wordpress.com/2008/09/25/fixed-tables-definitions-a-new-learning/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">AmanAlchemist</media:title>
		</media:content>
	</item>
		<item>
		<title>IMP-00058:Oracle Error 1438 encountered</title>
		<link>http://oracleadmins.wordpress.com/2008/09/18/imp-00058-oracle-error-1438-encountered/</link>
		<comments>http://oracleadmins.wordpress.com/2008/09/18/imp-00058-oracle-error-1438-encountered/#comments</comments>
		<pubDate>Thu, 18 Sep 2008 15:00:41 +0000</pubDate>
		<dc:creator>Amardeep Sidhu</dc:creator>
				<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[imp-00020]]></category>
		<category><![CDATA[imp-00058]]></category>
		<category><![CDATA[ora-01438]]></category>
		<category><![CDATA[oracle 8.1.7.4]]></category>

		<guid isPermaLink="false">http://oracleadmins.wordpress.com/?p=74</guid>
		<description><![CDATA[Errors are not really a welcome stuff   . Yesterday, I was importing a dump file (from 8.1.7.4) into 10.2.0.3 and hit
IMP-00020: long column too large for column buffer size (number).
After doing some googling and searching on metalink came to know (not sure though) that it was some bug in 8.1.7.4. And the solution [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=74&subd=oracleadmins&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Errors are not really a welcome stuff <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  . Yesterday, I was importing a dump file (from 8.1.7.4) into 10.2.0.3 and hit</p>
<p><strong>IMP-00020: long column too large for column buffer size (number)</strong>.</p>
<p>After doing some googling and searching on metalink came to know (not sure though) that it was some bug in 8.1.7.4. And the solution was to try with different values of buffer parameter in import (which actually didn&#8217;t help) . Thats what <strong>oerr </strong>also has to say:</p>
<ul><em>*Cause: The column buffer is too small. This usually occurs when importing LONG data.<br />
*Action: Increase the insert buffer size 10,000 bytes at a time (for example). Use this step-by-step  approach because a buffer size that is too large may cause a similar problem. </em></ul>
<p>And also probably the issue was that the export was run with <a href="http://oracleadmins.wordpress.com/2008/08/05/understanding-compress-parameter-in-export/" target="_blank">compress=N</a>. So the guys again ran the export of the table with compress=Y (which is the default). Hopes got some oxygen and we again ran the import. That IMP-00020 was gone and a new baby struck:</p>
<p><strong>IMP-00058:Oracle Error 1438 encountered.<br />
ORA-01438:Value Larger Than Specified precision allow for this Column</strong></p>
<p>Again started the googling and metalink&#8217;ing session and found that it was some bug <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  . Import itself creating the table and then uttering ORA-01438. Complete non-sense. Isn&#8217;t it ? Just hitting and trying what we did was pre-created the table with all the NUMBER columns having their data types defined simply as NUMBER without any precision and wow it completed without any errors. Now its stupid seriously.</p>
<p>So then we did some research on the data in the table and found that there was one row which was causing the whole shit. There were two columns defined as NUMBER(12) but the values in them were of length 30 and 60. So what it was ? Probably a data corruption or what ? Otherwise how the table definition would have allowed such crap to enter the table. Couldn&#8217;t ascertain the exact reason but happy ending, it was <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/oracleadmins.wordpress.com/74/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/oracleadmins.wordpress.com/74/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oracleadmins.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oracleadmins.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oracleadmins.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oracleadmins.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oracleadmins.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oracleadmins.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oracleadmins.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oracleadmins.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oracleadmins.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oracleadmins.wordpress.com/74/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=74&subd=oracleadmins&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oracleadmins.wordpress.com/2008/09/18/imp-00058-oracle-error-1438-encountered/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Sidhu</media:title>
		</media:content>
	</item>
		<item>
		<title>Transport Tablespace In The Same Database&#8230;.</title>
		<link>http://oracleadmins.wordpress.com/2008/09/17/transport-tablespace-in-the-same-database/</link>
		<comments>http://oracleadmins.wordpress.com/2008/09/17/transport-tablespace-in-the-same-database/#comments</comments>
		<pubDate>Wed, 17 Sep 2008 06:49:27 +0000</pubDate>
		<dc:creator>Aman Sharma</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://oracleadmins.wordpress.com/?p=70</guid>
		<description><![CDATA[Well this was not supposed to be a post but it was asked over Forums.oracle.com that can we do the transport of the tablespace in the same database after some testing?So the answer is yes. Now I was originally going to post it over there only but thanks to new Jive software, I couldn&#8217;t so [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=70&subd=oracleadmins&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Well this was not supposed to be a post but it was asked over Forums.oracle.com that can we do the transport of the tablespace in the same database after some testing?So the answer is yes. Now I was originally going to post it over there only but thanks to new Jive software, I couldn&#8217;t so I had to post it here. Have a read,</p>
<p><code>C:\Documents and Settings\Administrator&gt;sqlplus "/ as sysdba"</p>
<p>SQL*Plus: Release 9.2.0.1.0 - Production on Wed Sep 17 09:31:00<br />
2008</p>
<p>Copyright (c) 1982, 2002, Oracle Corporation.  All rights<br />
reserved.</p>
<p>Connected to:<br />
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production<br />
With the Partitioning, OLAP and Oracle Data Mining options<br />
JServer Release 9.2.0.1.0 - Production</p>
<p>SQL&gt; select name from V$database;</p>
<p>NAME<br />
---------<br />
MUMMYORA</p>
<p>SQL&gt; create tablespace test_tt datafile 'd:\test.dbf' size 2m;</p>
<p>Tablespace created.</p>
<p>SQL&gt; create user test identified by test default tablespace<br />
test_tt<br />
quota un<br />
ted on test_tt;</p>
<p>User created.</p>
<p>SQL&gt; grant create table ,create session to test;</p>
<p>Grant succeeded.</p>
<p>SQL&gt; conn test/test<br />
Connected.<br />
SQL&gt; create table tt_tab(a number);</p>
<p>Table created.</p>
<p>SQL&gt; insert into tt_tab values(1);</p>
<p>1 row created.</p>
<p>SQL&gt; commit;</p>
<p>Commit complete.</p>
<p>SQL&gt; conn / as sysdba<br />
Connected.<br />
SQL&gt; alter tablespace test_tt read only;</p>
<p>Tablespace altered.</p>
<p>SQL&gt; exit<br />
Disconnected from Oracle9i Enterprise Edition Release 9.2.0.1.0<br />
-<br />
Production<br />
With the Partitioning, OLAP and Oracle Data Mining options<br />
JServer Release 9.2.0.1.0 - Production</p>
<p>C:\Documents and Settings\Administrator&gt;sqlplus "/ as sysdba"</p>
<p>SQL*Plus: Release 9.2.0.1.0 - Production on Wed Sep 17 09:33:44<br />
2008</p>
<p>Copyright (c) 1982, 2002, Oracle Corporation.  All rights<br />
reserved.</p>
<p>Connected to:<br />
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production<br />
With the Partitioning, OLAP and Oracle Data Mining options<br />
JServer Release 9.2.0.1.0 - Production</p>
<p>SQL&gt; alter user sys identified by oracle;</p>
<p>User altered.</p>
<p>SQL&gt; exit<br />
Disconnected from Oracle9i Enterprise Edition Release 9.2.0.1.0<br />
-<br />
Production<br />
With the Partitioning, OLAP and Oracle Data Mining options<br />
JServer Release 9.2.0.1.0 - Production</p>
<p>C:\Documents and Settings\Administrator&gt;sqlplus "sys/oracle as<br />
sysdba"<br />
file=<br />
est_tt.dmp tablespaces=TEST_TT TRANSPORT_TABLESPACE=y<br />
Usage: SQLPLUS [ [&lt;option&gt;] [&lt;logon&gt;] [&lt;start&gt;] ]<br />
where &lt;option&gt; ::= -H | -V | [ [-L] [-M &lt;o&gt;] [-R &lt;n&gt;] [-S] ]<br />
      &lt;logon&gt;  ::= &lt;username&gt;[/&lt;password&gt;][@&lt;connect_string&gt;] | /<br />
|<br />
/NOLOG<br />
      &lt;start&gt;  ::= @&lt;URI&gt;|&lt;filename&gt;[.&lt;ext&gt;] [&lt;parameter&gt; ...]<br />
        "-H" displays the SQL*Plus version banner and usage<br />
syntax<br />
        "-V" displays the SQL*Plus version banner<br />
        "-L" attempts log on just once<br />
        "-M &lt;o&gt;" uses HTML markup options &lt;o&gt;<br />
        "-R &lt;n&gt;" uses restricted mode &lt;n&gt;<br />
        "-S" uses silent mode</p>
<p>C:\Documents and Settings\Administrator&gt;exp "sys/oracle as<br />
sysdba"<br />
file=d:\t<br />
tt.dmp tablespaces=TEST_TT TRANSPORT_TABLESPACE=y<br />
LRM-00108: invalid positional parameter value 'as'</p>
<p>EXP-00019: failed to process parameters, type 'EXP HELP=Y' for<br />
help<br />
EXP-00000: Export terminated unsuccessfully</p>
<p>C:\Documents and Settings\Administrator&gt;exp 'sys/oracle as<br />
sysdba'<br />
file=d:\t<br />
tt.dmp tablespaces=TEST_TT TRANSPORT_TABLESPACE=y</p>
<p>Export: Release 9.2.0.1.0 - Production on Wed Sep 17 09:35:09<br />
2008</p>
<p>Copyright (c) 1982, 2002, Oracle Corporation.  All rights<br />
reserved.</p>
<p>Connected to: Oracle9i Enterprise Edition Release 9.2.0.1.0 -<br />
Production<br />
With the Partitioning, OLAP and Oracle Data Mining options<br />
JServer Release 9.2.0.1.0 - Production<br />
Export done in WE8MSWIN1252 character set and AL16UTF16 NCHAR<br />
character set<br />
Note: table data (rows) will not be exported<br />
About to export transportable tablespace metadata...<br />
For tablespace TEST_TT ...<br />
. exporting cluster definitions<br />
. exporting table definitions<br />
. . exporting table                         TT_TAB<br />
. exporting referential integrity constraints<br />
. exporting triggers<br />
. end transportable tablespace metadata export<br />
Export terminated successfully without warnings.</p>
<p>C:\Documents and Settings\Administrator&gt;sqlplus "/ as sysdba"</p>
<p>SQL*Plus: Release 9.2.0.1.0 - Production on Wed Sep 17 09:40:22<br />
2008</p>
<p>Copyright (c) 1982, 2002, Oracle Corporation.  All rights<br />
reserved.</p>
<p>Connected to:<br />
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production<br />
With the Partitioning, OLAP and Oracle Data Mining options<br />
JServer Release 9.2.0.1.0 - Production</p>
<p>SQL&gt; exit<br />
Disconnected from Oracle9i Enterprise Edition Release 9.2.0.1.0<br />
-<br />
Production<br />
With the Partitioning, OLAP and Oracle Data Mining options<br />
JServer Release 9.2.0.1.0 - Production</p>
<p>C:\Documents and Settings\Administrator&gt;d:</p>
<p>D:\&gt;mkdir d:\bkup</p>
<p>D:\&gt;copy TEST.DBF d:\bkup<br />
        1 file(s) copied.</p>
<p>D:\&gt;sqlplus "/ as sysdba"</p>
<p>SQL*Plus: Release 9.2.0.1.0 - Production on Wed Sep 17 09:40:50<br />
2008</p>
<p>Copyright (c) 1982, 2002, Oracle Corporation.  All rights<br />
reserved.</p>
<p>Connected to:<br />
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production<br />
With the Partitioning, OLAP and Oracle Data Mining options<br />
JServer Release 9.2.0.1.0 - Production</p>
<p>SQL&gt; alter tablespace test_tt read write;</p>
<p>Tablespace altered.</p>
<p>SQL&gt; insert into test.tt_tab values(2);</p>
<p>1 row created.</p>
<p>SQL&gt; commit;</p>
<p>Commit complete.</p>
<p>SQL&gt; select * from test.tt_tab;</p>
<p>         A<br />
----------<br />
         1<br />
         2</p>
<p>SQL&gt; rem this was after export ;<br />
SQL&gt; drop tablespace test_tt including contents and datafiles;</p>
<p>Tablespace dropped.</p>
<p>SQL&gt; exit<br />
Disconnected from Oracle9i Enterprise Edition Release 9.2.0.1.0<br />
-<br />
Production<br />
With the Partitioning, OLAP and Oracle Data Mining options<br />
JServer Release 9.2.0.1.0 - Production</p>
<p>D:\&gt;imp 'sys/oracle as sysdba' file=d:\test_tt.dmp<br />
tablespaces=TEST_TT<br />
TRANS<br />
_TABLESPACE=y datafiles='d:\test.dbf'</p>
<p>Import: Release 9.2.0.1.0 - Production on Wed Sep 17 09:43:03<br />
2008</p>
<p>Copyright (c) 1982, 2002, Oracle Corporation.  All rights<br />
reserved.</p>
<p>Connected to: Oracle9i Enterprise Edition Release 9.2.0.1.0 -<br />
Production<br />
With the Partitioning, OLAP and Oracle Data Mining options<br />
JServer Release 9.2.0.1.0 - Production</p>
<p>Export file created by EXPORT:V09.02.00 via conventional path<br />
About to import transportable tablespace(s) metadata...<br />
import done in WE8MSWIN1252 character set and AL16UTF16 NCHAR<br />
character set<br />
. importing SYS's objects into SYS<br />
IMP-00017: following statement failed with ORACLE error 1565:<br />
 "BEGIN<br />
sys.dbms_plugts.beginImpTablespace('TEST_TT',12,'SYS',1,0,8192,1,3</p>
<p>"710620,1,2147483645,8,128,8,0,1,0,8,1151101578,1,1,35710182,NULL,0,0<br />
,NULL,<br />
 "ULL); END;"<br />
IMP-00003: ORACLE error 1565 encountered<br />
ORA-01565: error in identifying file 'd:\test.dbf'<br />
ORA-27041: unable to open file<br />
OSD-04002: unable to open file<br />
O/S-Error: (OS 2) The system cannot find the file specified.<br />
ORA-06512: at "SYS.DBMS_PLUGTS", line 1441<br />
ORA-06512: at line 1<br />
IMP-00000: Import terminated unsuccessfully</p>
<p>D:\&gt;copy d:\bkup\TEST.DBF d:\<br />
        1 file(s) copied.</p>
<p>D:\&gt;imp 'sys/oracle as sysdba' file=d:\test_tt.dmp<br />
tablespaces=TEST_TT<br />
TRANS<br />
_TABLESPACE=y datafiles='d:\test.dbf'</p>
<p>Import: Release 9.2.0.1.0 - Production on Wed Sep 17 09:43:18<br />
2008</p>
<p>Copyright (c) 1982, 2002, Oracle Corporation.  All rights<br />
reserved.</p>
<p>Connected to: Oracle9i Enterprise Edition Release 9.2.0.1.0 -<br />
Production<br />
With the Partitioning, OLAP and Oracle Data Mining options<br />
JServer Release 9.2.0.1.0 - Production</p>
<p>Export file created by EXPORT:V09.02.00 via conventional path<br />
About to import transportable tablespace(s) metadata...<br />
import done in WE8MSWIN1252 character set and AL16UTF16 NCHAR<br />
character set<br />
. importing SYS's objects into SYS<br />
. importing TEST's objects into TEST<br />
. . importing table                       "TT_TAB"<br />
Import terminated successfully without warnings.</p>
<p>D:\&gt;sqlplus test/test</p>
<p>SQL*Plus: Release 9.2.0.1.0 - Production on Wed Sep 17 09:43:26<br />
2008</p>
<p>Copyright (c) 1982, 2002, Oracle Corporation.  All rights<br />
reserved.</p>
<p>Connected to:<br />
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production<br />
With the Partitioning, OLAP and Oracle Data Mining options<br />
JServer Release 9.2.0.1.0 - Production</p>
<p>SQL&gt; select  * from tt_tab;</p>
<p>         A<br />
----------<br />
         1</p>
<p>SQL&gt;</code></p>
<p>What we have done is that we made a user Test owning a tablespace<br />
Test_tt. We put one value in it(our original work) and we exported the  &#8221;good time&#8221; tablespace. We did some more work,inserted one more<br />
value(can call it changes or testing) and once we finished,we dropped the<br />
tablespace. We didn&#8217;t drop the user. We imported back the tablespace<br />
and we were back to value 1 from where we started. More or less,same like tablespace attached and detached.</p>
<p>Aman&#8230;.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/oracleadmins.wordpress.com/70/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/oracleadmins.wordpress.com/70/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oracleadmins.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oracleadmins.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oracleadmins.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oracleadmins.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oracleadmins.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oracleadmins.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oracleadmins.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oracleadmins.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oracleadmins.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oracleadmins.wordpress.com/70/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=70&subd=oracleadmins&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oracleadmins.wordpress.com/2008/09/17/transport-tablespace-in-the-same-database/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">AmanAlchemist</media:title>
		</media:content>
	</item>
		<item>
		<title>Buffer Cache In Shared Pool?</title>
		<link>http://oracleadmins.wordpress.com/2008/09/16/buffer-cache-in-shared-pool/</link>
		<comments>http://oracleadmins.wordpress.com/2008/09/16/buffer-cache-in-shared-pool/#comments</comments>
		<pubDate>Tue, 16 Sep 2008 12:46:12 +0000</pubDate>
		<dc:creator>Aman Sharma</dc:creator>
				<category><![CDATA[Research]]></category>

		<guid isPermaLink="false">http://oracleadmins.wordpress.com/?p=68</guid>
		<description><![CDATA[Well Oracle is changing and I believe that there are alot changes which are happening &#8220;under-the-hood&#8221;. I just got a question  over Forums that can Shared Pool shrink if we are using ASMM?Well the docs say no that wont be possible. Well the answer as per docs is No,its not possible that oracle will [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=68&subd=oracleadmins&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Well Oracle is changing and I believe that there are alot changes which are happening &#8220;under-the-hood&#8221;. I just got a <a href="http://forums.oracle.com/forums/thread.jspa?threadID=706724&amp;tstart=0">question <a> over Forums that can Shared Pool shrink if we are using ASMM?Well the docs say no that wont be possible. Well the answer as per <a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/create.htm#sthref388">docs</a> is No,its not possible that oracle will shrink the shared pool. Another fellow poster over forums, gave this link where Tanel Poder revealed one more &#8220;hidden&#8221; thing that Oracle from 10.2 onwards , is keeping Database buffer cache chunks in the Shared Pool heap. Now my first reponse what WTH! Why they would want to do that? But Tanel explains it well. I am posting the entire entry here with the reference. Things are not changing in a &#8220;big time&#8221;.<br />
<em>Well, believe or not, in addition to keeping private undo and redo buffers in shared pool, Oracle can nowadays hold some of the buffer cache there as well. </p>
<p>Sounds crazy? Check this! </em><br />
<code>SQL&gt; select </p>
<p>  2     s.ksmchptr      SP_CHUNK,<br />
  3     s.ksmchsiz      CH_SIZE,<br />
  4     b.obj           DATAOBJ#,<br />
  5     b.ba            BLOCKADDR,<br />
  6     b.blsiz         BLKSIZE,<br />
  7     decode(b.class,<br />
  8             1,'data block',<br />
  9             2,'sort block',<br />
 10             3,'save undo block',<br />
 11             4,'segment header',<br />
 12             5,'save undo header',<br />
 13             6,'free list',<br />
 14             7,'extent map',<br />
 15             8,'1st level bmb',<br />
 16             9,'2nd level bmb',<br />
 17             10,'3rd level bmb',<br />
 18             11,'bitmap block',<br />
 19             12,'bitmap index block',<br />
 20             13,'file header block',<br />
 21             14,'unused',<br />
 22             15,'system undo header',<br />
 23             16,'system undo block',<br />
 24             17,'undo header',<br />
 25             18,'undo block',<br />
 26             class)  BLKTYPE,<br />
 27     decode (b.state,<br />
 28             0,'free',1,'xcur',2,'scur',3,'cr', 4,'read',<br />
 29             5,'mrec',6,'irec',7,'write',8,'pi', 9,'memory',<br />
 30             10,'mwrite',11,'donated',b.state) BLKSTATE<br />
 31  from<br />
 32     x$bh b,<br />
 33     x$ksmsp s<br />
 34  where (<br />
 35     b.ba &gt;= s.ksmchptr<br />
 36     and to_number(b.ba, 'XXXXXXXXXXXXXXXX') + b.blsiz &lt;<br />
to_number(ksmchptr, 'XXXXXXXXXXXXXXXX') + ksmchsiz<br />
 37 )<br />
 38 and s.ksmchcom = 'KGH: NO ACCESS'<br />
 39 order by s.ksmchptr, b.ba;<br />
SP_CHUNK CH_SIZE DATAOBJ# BLOCKADDR BLKSIZE BLKTYPE BLKSTATE </p>
<p>---------------- ---------- ---------- ---------------- -------<br />
-------------------- ----------<br />
0000000387C01FE0    1269792       9001 0000000387C26000    8192 data block<br />
xcur<br />
                                  9001 0000000387C28000    8192 data block<br />
xcur<br />
                                  9001 0000000387C2A000    8192 data block<br />
xcur<br />
                                     2 0000000387C2C000    8192 data block<br />
xcur<br />
                                  9001 0000000387C2E000    8192 1st level<br />
bmb        xcur<br />
                                  9001 0000000387C30000    8192 2nd level<br />
bmb        xcur<br />
                                  9001 0000000387C32000    8192 segment<br />
header       xcur<br />
                            4294967295 0000000387C34000    8192 36<br />
xcur<br />
                            4294967295 0000000387C36000    8192 36<br />
xcur<br />
                                 51673 0000000387C38000    8192 data block<br />
xcur<br />
                            4294967295 0000000387C3A000    8192 36<br />
xcur<br />
                            4294967295 0000000387C3C000    8192 22<br />
xcur<br />
                            4294967295 0000000387C3E000    8192 22<br />
xcur<br />
                                    37 0000000387C40000    8192 data block<br />
xcur<br />
                            4294967295 0000000387C42000    8192 22<br />
xcur<br />
                            4294967295 0000000387C44000    8192 30<br />
xcur<br />
                            4294967295 0000000387C46000    8192 30<br />
xcur<br />
                            4294967295 0000000387C48000    8192 30<br />
xcur<br />
                                   573 0000000387C4A000    8192 data block<br />
xcur </code><br />
<em>From matching SP_CHUNK and BLOCKADDR values you see that there are cache buffers which actually reside in shared pool heap. </p>
<p>When MMAN tries to get rid of a shared pool granule it obviously can&#8217;t just flush and throw away all the object in it. As long as anybody references chunks in this granule, it cannot be completely deallocated. </p>
<p>Oracle has faced a decision, what to do in this case: 1) wait until all chunks aren&#8217;t in use anymore &#8211; this might never happen 2) suspend the instance, relocate chunks somewhere else and update all SGA/PGA/UGA/CGA structures for all processes accordingly &#8211; this would get very complex<br />
3) flush as many chunks from this shared pool granule as possible, mark them as &#8220;KGH: NO ACCESS&#8221; that nobody else would touch them, mark corresponding entry to DEFERRED in V$SGA_RESIZE_OPS and notify buffer cache manager, about the new memory locations being available for use. </p>
<p>Oracle has gone with option 3 as option 1 wouldn&#8217;t satisfy us and 2 would be very complex to implement, and it would mean a complete instance hang for seconds to minutes. </p>
<p>So, Oracle can share a granule between shared pool and buffer cache data. This sounds like a mess, but there is not really a better way to do it (if leaving the question, why the heck do you want to continuously reduce your shared pool size anyway, out). </p>
<p>This was tested on Oracle 10.2.0.2 on Solaris 10/x64 </p>
<p>Tanel. </em><br />
And the link is,<br />
http://www.orafaq.com/maillist/oracle-l/2006/08/22/0958.htm<br />
My head is spinning :-S.<br />
Aman&#8230;.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/oracleadmins.wordpress.com/68/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/oracleadmins.wordpress.com/68/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oracleadmins.wordpress.com/68/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oracleadmins.wordpress.com/68/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oracleadmins.wordpress.com/68/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oracleadmins.wordpress.com/68/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oracleadmins.wordpress.com/68/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oracleadmins.wordpress.com/68/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oracleadmins.wordpress.com/68/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oracleadmins.wordpress.com/68/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oracleadmins.wordpress.com/68/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oracleadmins.wordpress.com/68/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=68&subd=oracleadmins&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oracleadmins.wordpress.com/2008/09/16/buffer-cache-in-shared-pool/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">AmanAlchemist</media:title>
		</media:content>
	</item>
		<item>
		<title>NetProperties File, EM &amp; Mystry Continues&#8230;.</title>
		<link>http://oracleadmins.wordpress.com/2008/09/11/netproperties-file-em-mystry-continues/</link>
		<comments>http://oracleadmins.wordpress.com/2008/09/11/netproperties-file-em-mystry-continues/#comments</comments>
		<pubDate>Thu, 11 Sep 2008 13:08:25 +0000</pubDate>
		<dc:creator>Aman Sharma</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[EM]]></category>
		<category><![CDATA[Netproperties]]></category>

		<guid isPermaLink="false">http://oracleadmins.wordpress.com/?p=63</guid>
		<description><![CDATA[Today in my program, we hit with an almost uncertain error. We were trying to create listener using EM console but it was throwing us an error that the location is not the right one when the location was perfectly alright. I am not sure what actually is the error but despite the best effort, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=63&subd=oracleadmins&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Today in my program, we hit with an almost uncertain error. We were trying to create listener using EM console but it was throwing us an error that the location is not the right one when the location was perfectly alright. I am not sure what actually is the error but despite the best effort, I couldn&#8217;t get any clue.<br />
Now , this was not solved but in the meanwhile some one asked me that what is the use of NetProperties file which is available in $ORACLE_HOME/network/tools. This file is used by the network related tools, for example Net manager, Net Configuration Assistant etc. Despite searching alot, I couldn&#8217;t find anything about it either. Grrr!<br />
Well , both the things didn&#8217;t lead to no where but some how in the search, I stumbled upon a workaround that we need to do these changes in the Netproperties file to make EM work,<br />
1)Go to $oracle_home/nework/tools<br />
2)In the file Netproperties, comment the line INSTALLEDCOMPONENTS=ORACLENET<br />
And it did work. Now  the million dollar question is what does this setting means and why did comment it? And the zillion dollar question( since the starting) remains yet a mystery that what does Netproperties file control?<br />
Search continues&#8230;.<br />
Aman&#8230;.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/oracleadmins.wordpress.com/63/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/oracleadmins.wordpress.com/63/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oracleadmins.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oracleadmins.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oracleadmins.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oracleadmins.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oracleadmins.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oracleadmins.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oracleadmins.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oracleadmins.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oracleadmins.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oracleadmins.wordpress.com/63/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=63&subd=oracleadmins&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oracleadmins.wordpress.com/2008/09/11/netproperties-file-em-mystry-continues/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">AmanAlchemist</media:title>
		</media:content>
	</item>
		<item>
		<title>Open Your Heart, Oracle Is Listening&#8230;.</title>
		<link>http://oracleadmins.wordpress.com/2008/09/10/open-your-heart-oracle-is-listening/</link>
		<comments>http://oracleadmins.wordpress.com/2008/09/10/open-your-heart-oracle-is-listening/#comments</comments>
		<pubDate>Wed, 10 Sep 2008 16:21:07 +0000</pubDate>
		<dc:creator>Aman Sharma</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://oracleadmins.wordpress.com/?p=65</guid>
		<description><![CDATA[Just read from Justin&#8217;s blog, Oracle is going to put an Oracle Listen promotion over its web site. Check this, http://blogs.oracle.com/otn/2008/09/oracle_listens_1.html
So it means that we would actually get a chance to tell Oracle what we want? Cool, now that&#8217;s what I call real close to the customers and listening to their heartbeat! Good work. It [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=65&subd=oracleadmins&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Just read from Justin&#8217;s blog, Oracle is going to put an Oracle Listen promotion over its web site. Check this, http://blogs.oracle.com/otn/2008/09/oracle_listens_1.html<br />
So it means that we would actually get a chance to tell Oracle what we want? Cool, now that&#8217;s what I call real close to the customers and listening to their heartbeat! Good work. It was supposed to be coming out today but due to some tech issues ( as mentioned by Justin) , it may get delayed. Nevertheless, its a great effort and highly appreciable! Let&#8217;s see what sort of suggestions would come up from it?</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/oracleadmins.wordpress.com/65/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/oracleadmins.wordpress.com/65/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oracleadmins.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oracleadmins.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oracleadmins.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oracleadmins.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oracleadmins.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oracleadmins.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oracleadmins.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oracleadmins.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oracleadmins.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oracleadmins.wordpress.com/65/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=65&subd=oracleadmins&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oracleadmins.wordpress.com/2008/09/10/open-your-heart-oracle-is-listening/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">AmanAlchemist</media:title>
		</media:content>
	</item>
		<item>
		<title>A New Learning, IMU &amp; Private Redo Strand&#8230;.</title>
		<link>http://oracleadmins.wordpress.com/2008/08/30/a-new-learning-imu-private-redo-strand/</link>
		<comments>http://oracleadmins.wordpress.com/2008/08/30/a-new-learning-imu-private-redo-strand/#comments</comments>
		<pubDate>Sat, 30 Aug 2008 07:50:02 +0000</pubDate>
		<dc:creator>Aman Sharma</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://oracleadmins.wordpress.com/?p=60</guid>
		<description><![CDATA[ 
There are very few things that I know but there are tons of things which I don’t know. I came across one more such thing like this few days ago when this question (http://forums.oracle.com/forums/thread.jspa?messageID=2713561&#38;#2713561)  came over OTN. Interestingly, what the OP mentioned was indeed true and I was not having a clue what’s going on. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=60&subd=oracleadmins&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">There are very few things that I know but there are tons of things which I don’t know. I came across one more such thing like this few days ago when this question (</span><a href="http://forums.oracle.com/forums/thread.jspa?messageID=2713561&amp;#2713561"><span style="font-size:small;font-family:Times New Roman;">http://forums.oracle.com/forums/thread.jspa?messageID=2713561&amp;#2713561</span></a><span style="font-size:small;font-family:Times New Roman;">) <span> </span>came over OTN. Interestingly, what the OP mentioned was indeed true and I was not having a clue what’s going on. Like most of the times, JL had an answer to the puzzle and he gave a lead. This blog post is not about any “new” invention that I have done. Its merely a collection of my understanding about a new mechanism in &gt;10g SGAs. So with this note ,let’s get the party started.</span></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:small;"><span style="font-family:Times New Roman;">Dirty Buffers &amp; Redo Log Buffer</span></span></strong></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In Oracle buffer cache, buffers stay in multiple states. When a buffer is not changed and is just available for use, it’s a clean buffer. When the buffer encounters a change, the buffer status is marked as Dirty buffer. This status is used by Oracle to provide read-consistancy for the other users who would access the same buffer but when the transaction is alive. In simple terms, a dirty buffer is that one who got an image in it which is not the one when it was brought into the cache. Oracle maintains for this dirty buffer, CR(consistent read) buffers aka snapshot blocks which provide read conistancy for the others.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">The change vectors for this buffer are also logged in the redo log buffer before they get applied to the actual buffers(write ahead logging) , using which Oracle maintains this assurance that no matter what, if we have the data in the log buffer, its safe. The data in the log buffer is written by LGWR to the redo log files. Once there, its permanently saved and hence protected against any crash. </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In order to log changes in the log buffer, oracle typically follows this process</span></p>
<p class="MsoNormal" style="text-indent:-0.25in;margin:0 0 0 0.5in;"><span style="font-family:Times New Roman;"><span><span style="font-size:small;">1)</span><span style="font:7pt &quot;">      </span></span><span style="font-size:small;">A calculation is done that how much space would be needed in the log buffer.</span></span></p>
<p class="MsoNormal" style="text-indent:-0.25in;margin:0 0 0 0.5in;"><span style="font-family:Times New Roman;"><span><span style="font-size:small;">2)</span><span style="font:7pt &quot;">      </span></span><span style="font-size:small;">Server process acquires Redo Copy Latch. This is used for making the announcement that some redo will be copied into the log buffer.</span></span></p>
<p class="MsoNormal" style="text-indent:-0.25in;margin:0 0 0 0.5in;"><span style="font-family:Times New Roman;"><span><span style="font-size:small;">3)</span><span style="font:7pt &quot;">      </span></span><span style="font-size:small;"><span> </span>Acquires Redo Allocation Latch. This is the actual latch which will allocate the space in the log buffer. </span></span></p>
<p class="MsoNormal" style="text-indent:-0.25in;margin:0 0 0 0.5in;"><span style="font-family:Times New Roman;"><span><span style="font-size:small;">4)</span><span style="font:7pt &quot;">      </span></span><span style="font-size:small;"><span> </span>Redo Allocation Latch is released after the space is acquired in the log buffer.</span></span></p>
<p class="MsoNormal" style="text-indent:-0.25in;margin:0 0 0 0.5in;"><span style="font-family:Times New Roman;"><span><span style="font-size:small;">5)</span><span style="font:7pt &quot;">      </span></span><span style="font-size:small;">Redo copy latch is used to copy the redo change vectors in the log buffers.</span></span></p>
<p class="MsoNormal" style="text-indent:-0.25in;margin:0 0 0 0.5in;"><span style="font-family:Times New Roman;"><span><span style="font-size:small;">6)</span><span style="font:7pt &quot;">      </span></span><span style="font-size:small;">Redo copy latch is released.</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">After the copy is copy is complete and applying them over the buffers in the buffer cache, depending upon various conditions, LGWR may start writing the contents into the log files. How many latches we have got have at the moment for our database can be seen from V$latch_childeren. Here is an output from my 11gr1 machine.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>1<span>  </span>select latch#,child#,name from V$latch_children</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>2* where name like &#8216;%redo%&#8217; order by 1,2</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; /</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>    </span>LATCH#<span>     </span>CHILD# NAME</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>169<span>          </span>1 redo copy</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>169<span>          </span>2 redo copy</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>169<span>          </span>3 redo copy</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>169<span>          </span>4 redo copy</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>          </span>1 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>   </span><span>       </span>2 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>          </span>3 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>          </span>4 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>          </span>5 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>          </span>6 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>          </span>7 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>          </span>8 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>   </span><span>    </span>170<span>          </span>9 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>         </span>10 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>         </span>11 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>         </span>12 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>         </span>13 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>         </span>14 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>         </span>15 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>         </span>16 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>         </span>17 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>         </span>18 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>         </span>19 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>       </span>170<span>         </span>20 redo allocation</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">24 rows selected.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">With heavy processing, lots of redo being generated, there may be a contention over the redo allocation latches. So for this purpose, there was a parameter Log_parallelism( http://download.oracle.com/docs/cd/B10501_01/server.920/a96536/ch1105.htm#REFRN10099) in 9i which could be used to make the redo generation go more faster. <span> </span>This would separate the log buffer into further small buffers. This parameter is only till 9i and from 10.1 onwards its deprecated(</span><a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28300/changes.htm#UPGRD12575"><span style="font-size:small;font-family:Times New Roman;">http://download.oracle.com/docs/cd/B28359_01/server.111/b28300/changes.htm#UPGRD12575</span></a><span style="font-size:small;font-family:Times New Roman;"> ) as in 10g, the mechanism is changed ( and is the actual topic of this post) which handles the excessive redo workload.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">So the moral of the story so far comes up is that when we change some thing in the buffer cache, the change is protected in the log buffer. To do this two latches are majorly used. The changes in the log buffer are protected in the physical log files by LGWR.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;">You must be thinking that that is this the replica of docs or what? Well certainly, it’s the basics and I thought before I forget all this, I must write it down and this talks about the terms which will be coming up a little later in the post. So chill </span><span style="font-family:Wingdings;"><span>J</span></span><span style="font-family:Times New Roman;">. Told you its not any new invention but collection <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> .</span></span></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:small;"><span style="font-family:Times New Roman;">What’s Wrong With All This</span></span></strong></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Well actually nothing much. This is some this which is happening since the inception of Oracle I believe. Some things came and go but in nutshell things remained the same. This allocation of latches and other stuff did prove to be fine but as they all good things come to an end, this also needed some modifications. As with the workloads being more heavy and with much bigger databases and higher transaction rates, it becomes too tough to manage the redo allocations using latches. Clearly for the reasons that are well documented in PT guide that with lots of redo, the latches required to copy the redo data in the log buffer come under contention and so does the LGWR process too. There is a workaround to invoke multiple slaves for LGWR for<span>  </span>heavy systems but that too is not some thing which is not recommended as long as not fully benchmarked. Surely there are tons of guidelines that are there for users in order to make transactions small, have a good media where redo can stay and so on but they can be applied to a certain level. So there was a need for things to be modified from the grass root level and that’s what happened in 10g(10.1) onwards.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">A Strange Output</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">With the Dirty Buffers discussion given above, you must be clear about the idea about them. So here is small table creation and modification and we would see some dirty buffers getting created,</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; select * from V$version;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">BANNER</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 &#8211; Production</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">PL/SQL Release 11.1.0.6.0 &#8211; Production</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">CORE<span>    </span>11.1.0.6.0<span>      </span>Production</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">TNS for 32-bit Windows: Version 11.1.0.6.0 &#8211; Production</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">NLSRTL Version 11.1.0.6.0 &#8211; Production</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; alter system flush buffer_cache;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">System altered.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; create table t(a number)</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>2<span>  </span>/</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Table created.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; SELECT b.status, object_name, object_type, dirty &#8220;Dirty&#8221; FROM v$bh b, dba_objects o</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>2<span>  </span>WHERE b.objd = o.data_object_id AND o.owner = &#8216;AMAN&#8217; and object_name=&#8217;T';</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">STATUS<span>     </span>OBJECT_NAME</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">OBJECT_TYPE<span>         </span>D</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- -</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">xcur<span>       </span>T</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">TABLE<span>               </span>Y</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>Y</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">TABLE<span>               </span>Y</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; insert into t values(1);</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">1 row created.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; SELECT b.status, object_name, object_type, dirty &#8220;Dirty&#8221; FROM v$bh b, dba_objects o</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>2<span>  </span>WHERE b.objd = o.data_object_id AND o.owner = &#8216;AMAN&#8217; and object_name=&#8217;T';</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">STATUS<span>     </span>OBJECT_NAME</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">OBJECT_TYPE<span>         </span>D</span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- -</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>Y</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>N</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>N</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>Y</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>N</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>Y</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>N</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">TABLE<span>               </span>N</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">8 rows selected.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; commit;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Commit complete.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; SELECT b.status, object_name, object_type, dirty &#8220;Dirty&#8221; FROM v$bh b, dba_objects o</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>2<span>  </span>WHERE b.objd = o.data_object_id AND o.owner = &#8216;AMAN&#8217; and object_name=&#8217;T';</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">STATUS<span>     </span>OBJECT_NAME</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;</span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">OBJECT_TYPE<span>         </span>D</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- -</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>Y</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>Y</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>Y</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>Y</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>              </span><span> </span>Y</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>Y</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">xcur<span>       </span>T</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;"><span style="font-family:Times New Roman;">TABLE<span>               </span>Y</span></span></span></p>
<p class="MsoNormal" style="margin:0;"><span lang="FR"><span style="font-size:small;font-family:Times New Roman;"> </span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">xcur<span>       </span>T</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">TABLE<span>               </span>Y</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">8 rows selected.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Well if you have seen the output with a little care, you must have seen that even when we have given the dmp(insert in this case) there were no buffers which were marked dirty. Oracle did acquire some buffers to keep our changes but they were not marked dirty.<span>  </span>But when we issued commit, all the buffers were marked dirty. Why so? </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">The New SGA Of IMU/ Private Redo Strands</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Due to the reasons mentioned above for the allocation and redo latch contentions, from 10.1 onwards, Oracle has introduced private redo allocation areas and In memory Undo. </span></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:small;"><span style="font-family:Times New Roman;">IMU(In Memory Undo)</span></span></strong></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">With the same reason that Oracle needs to protect redo, it also has to protect Undo to make sure that the block’s old contents are also saved. This would require an access to the blocks and than later on change the transaction table to make the changes logged. The transaction records can be seen from V$transaction. In order to access undo segment header blocks directly, we can also check X$KTUXE and for the base table of V$transaction, X$KTCXB can be used. From oracle 10g onwards, Oracle does use the Undo blocks but makes them available in private memory areas which are specifically created in the Shared Pool. Each pool is containing Undo data of a<span>  </span>transaction. Undo data is updated into the segment header but not into the undo blocks. For maintaining them, in the shared pool , memory areas are configured which are used to protect the undo that is coming up. These are controlled by two parameters _in_memory_undo and _imu_pools. Both can be seen from the base tables x$ksppi and x$ksppcv2 </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; l</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>1<span>  </span>select<span>  </span>KSPFTCTXDVL,kspftctxdf,ksppinm</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>2<span>  </span>from x$ksppcv2 a,x$ksppi b</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>3* where a.indx=b.indx and b.ksppinm like &#8216;%imu%&#8217;</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; column KSPFTCTXDVL format a10</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; /</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">KSPFTCTXDV KSPFTC KSPPINM</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;- &#8212;&#8212; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">2<span>          </span>TRUE<span>   </span>_simulator_upper_bound_multiple</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">16<span>         </span>TRUE<span>  </span><span> </span>_simulator_pin_inval_maxcnt</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">10240<span>      </span>TRUE<span>   </span>_simulator_lru_rebalance_thresh</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">5<span>          </span>TRUE<span>   </span>_simulator_lru_rebalance_sizthr</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">8192<span>       </span>TRUE<span>   </span>_simulator_bucket_mindelta</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">8<span>          </span>TRUE<span>   </span>_simulator_lru_scan_count</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">10<span>         </span>TRUE<span>   </span>_simulator_internal_bound</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">1024<span>       </span>TRUE<span>   </span>_simulator_reserved_obj_count</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">4096<span>       </span>TRUE<span>   </span>_simulator_reserved_heap_count</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">2<span>          </span>TRUE<span>   </span>_simulator_sampling_factor</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">0<span>          </span>TRUE<span>   </span>_simulate_mem_transfer</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">0<span>          </span>TRUE<span>   </span>_db_writer_flush_imu</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">0<span>          </span>TRUE<span>   </span>_minimum_giga_scn</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">1800<span>       </span>TRUE<span>   </span>_log_simultaneous_copies</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">d:\oracle\ FALSE<span>  </span>_allow_error_simulation</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">flash_reco</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">very_area</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SLFLUSH<span>    </span>TRUE<span>   </span>_gc_policy_minimum</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">FALSE<span>      </span>TRUE<span>   </span>_gc_maximum_bids</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">TRUE<span>       </span>TRUE<span>   </span>_minimum_db_flashback_retention</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">600<span>        </span>TRUE<span>   </span>_recursive_imu_transactions</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">TRUE<span>       </span>TRUE<span>   </span>_smu_error_simulation_site</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">TRUE<span>       </span>TRUE<span>   </span>_smu_error_simulation_type</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">0<span>          </span>TRUE<span>   </span>_imu_pools</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">10<span>         </span>TRUE<span>   </span>_minimum_blocks_to_shrink</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">TRUE<span>       </span>TRUE<span>   </span>_minimum_extents_to_shrink</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">RUN_TIME<span>   </span>TRUE<span>   </span>_plsql_minimum_cache_hit_percent</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">25 rows selected.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">And</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; l</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>1<span>  </span>select<span>  </span>KSPFTCTXDVL,kspftctxdf,KSPFTCTXVL,KSPFTCTXIS,ksppinm</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>2<span>  </span>from x$ksppcv2 a,x$ksppi b</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>3* where a.indx=b.indx and b.ksppinm like &#8216;%undo%&#8217;</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; /</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">KSPFTCTXDV KSPFTC KSPFTCTXVL KSPFTC KSPPINM</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;- &#8212;&#8212; &#8212;&#8212;&#8212;- &#8212;&#8212; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">FALSE<span>      </span>TRUE<span>   </span>FALSE<span>      </span>FALSE<span>  </span>_gc_undo_affinity</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">AUTO<span>       </span>TRUE<span>   </span>AUTO<span>       </span>FALSE<span>  </span>_gc_dissolve_undo_af</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>                                    </span>finity</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">TRUE<span>       </span>TRUE<span>   </span>TRUE<span>       </span>FALSE<span>  </span>_gc_initiate_undo_af</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>                                    </span>finity</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">0<span>          </span>TRUE<span>   </span>0<span>          </span>FALSE<span>  </span>_gc_undo_block_disk_</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>                                    </span>reads</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>           </span>TRUE<span>              </span>FALSE<span>  </span>_undo_block_compress</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>                                   </span><span> </span>ion</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>           </span>TRUE<span>              </span>FALSE<span>  </span>undo_management</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>           </span>TRUE<span>              </span>FALSE<span>  </span>undo_tablespace</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">100<span>        </span>TRUE<span>   </span>100<span>        </span>FALSE<span>  </span>_collect_undo_stats</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">0<span>          </span>TRUE<span>   </span>0<span>          </span>FALSE<span>  </span>_undo_debug_mode</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">0<span>          </span>TRUE<span>   </span>0<span>          </span>FALSE<span>  </span>_verify_undo_quota</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>           </span>TRUE<span>              </span>FALSE<span>  </span>_in_memory_undo</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">FALSE<span>      </span>TRUE<span>   </span>FALSE<span>      </span>FALSE<span>  </span>_undo_autotune</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">FALSE<span>      </span>TRUE<span>   </span>FALSE<span>      </span>FALSE<span>  </span>undo_retention</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">0<span>          </span>TRUE<span>   </span>0<span>          </span>FALSE<span>  </span>_undo_debug_usage</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">0<span>          </span>TRUE<span>   </span>0<span>          </span>FALSE<span>  </span>_smon_undo_seg_resca</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>                                    </span>n_limit</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">0<span>          </span>TRUE<span>   </span>0<span>          </span>FALSE<span>  </span>_optimizer_undo_cost</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>                                    </span>_change</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">TRUE<span>       </span>TRUE<span>   </span>TRUE<span>       </span>FALSE<span>  </span>_optimizer_undo_chan</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>                         </span><span>           </span>ges</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">17 rows selected.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Each pool is maintained by a latch and that is called “in memory undo latch”. They can be seen from V$latch_children</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; select name from V$latch_children where name like &#8216;%undo%&#8217;;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">NAME</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">undo global data</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">undo global data</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">undo global data</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">21 rows selected.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">We can see that in the shared pool, regarding Undo,there are several structures available. </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; select pool,name from V$sgastat<span>  </span>where pool=&#8217;shared pool&#8217; and lower(name) like &#8216;%undo%&#8217;;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">POOL<span>         </span>NAME</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">shared pool<span>  </span>UNDO INFO SEGMENTED ARRAY</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>   </span><span>          </span>KCB undo bitvec</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>             </span>Undo Meta Data</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>             </span>Auto tune undo info</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>             </span>UNDO INFO</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>             </span>KTI-UNDO</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>             </span>UNDO INFO HASH</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>             </span>UNDO STAT INFO</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">The IMU pools are allocated in the shared pool. The data that we change gets copied to these pools from a<span>  </span>latch called In memory Undo latch. We can see it here from V$latch,</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; select name from V$latch where name like &#8216;%undo%&#8217;;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">NAME</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">undo global data</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">corrupted undo seg lock</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In memory undo latch</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">When we modify the data, oracle doesn’t apply the data to the data blocks immediately but It allocates the data in the IMU pools in the shared pool with the help of this IMU latch. This mechanism avoids the pinning of the Undo segment header block and also to the undo data blocks which are otherwise used immediately when the transaction starts. Now they are only used when the transaction commits. The data is in the pool and from there only it gets copied to the buffer cache. As each pool is assigned to one transaction and is maintained by an individual latch, the mechanism works well to reduce the contention. I am still not clear that with a very very heavy OLTP environment, what would happen? Are the pools increased at that time or not, or some thing else happens, I am not sure. </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">The IMU pools are also described in the X$ktifp. The size of the pools are 65kb and can be seen as follows,</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; select ktifpno,ktifppsi from x$ktifp;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>   </span>KTIFPNO<span>   </span>KTIFPPSI</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;-</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>         </span>0<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>         </span>1<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>         </span>2<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>         </span>3<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>         </span>4<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>         </span>5<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>         </span>6<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>         </span>7<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>         </span>8<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>         </span>9<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>        </span>10<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>   </span>KTIFPNO<span>   </span>KTIFPPSI</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;-</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>        </span>11<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>        </span>12<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>        </span>13<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>        </span>14<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>        </span>15<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>        </span>16<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>        </span>17<span>      </span>65535</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">18 rows selected.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">So there are 18 pools allocated and are of 65kb each in size. This undo data is “flushed” to the undo segments when the pools are full. This write happens in the batch format. There are events when the data in the IMU pools gets flushed. These events are mentioned in the base table x$ktiff. We can see the reasons here,</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; l</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>1<span>  </span>select<span>  </span>KTIFFCAT, KTIFFFLC</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>2* from<span>  </span>x$ktiff</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; /</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">KTIFFCAT<span>                                   </span>KTIFFFLC</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;-</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Undo pool overflow flushes<span>                        </span>1</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Stack cv flushes <span>                                 </span>9</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Multi-block undo flushes<span>                          </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Max. chgs flushes<span>                                 </span>2</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">NTP flushes<span>                                       </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Contention flushes<span>                                </span>9</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Redo pool overflow flushes<span>                        </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Logfile space flushes<span>                             </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Multiple persistent buffer flushes<span>                </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Bind time flushes<span>                                 </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Rollback flushes<span>                                </span>335</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Commit flushes<span>                                 </span>1570</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Recursive txn flushes<span>                             </span>2</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Redo only CR flushes<span>                              </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Ditributed txn flushes<span>                            </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Set txn use rbs flushes<span>                           </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Bitmap state change flushes<span>                      </span>21</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Presumed commit violation<span>                         </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Securefile direct-write lob update flush<span>          </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">es</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">19 rows selected.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">We can see with simple DML that data is being changed and IMU is being flushed. </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">In session 1, I made a table,</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">C:\Documents and Settings\Aman&gt;sqlplus / as sysdba</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL*Plus: Release 11.1.0.6.0 &#8211; Production on Sat Aug 30 11:42:21 2008</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Copyright (c) 1982, 2007, Oracle.<span>  </span>All rights reserved.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Connected to:</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 &#8211; Production</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">With the Partitioning, Oracle Label Security, OLAP, Data Mining,</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Oracle Database Vault and Real Application Testing options</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; create table a as select * from dba_objects;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Table created.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">And in session 2(the same session from where we saw the events), </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; /</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">KTIFFCAT<span>                                   </span>KTIFFFLC</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;-</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Undo pool overflow flushes<span>                        </span>1</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Stack cv flushes<span>                            </span><span>      </span>9</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Multi-block undo flushes<span>                          </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Max. chgs flushes<span>                                 </span>2</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">NTP flushes<span>                                       </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Contention flushes<span>                                </span>9</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Redo pool overflow flushes<span>              </span><span>          </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Logfile space flushes<span>                             </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Multiple persistent buffer flushes<span>                </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Bind time flushes<span>                                 </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:small;"><span style="font-family:Times New Roman;">Rollback flushes<span>                                </span>338</span></span></strong></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:small;"><span style="font-family:Times New Roman;">Commit flushes<span>                      </span><span>           </span>1592</span></span></strong></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Recursive txn flushes<span>                             </span>2</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Redo only CR flushes<span>                              </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Ditributed txn flushes<span>                            </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Set txn use rbs flushes<span>                           </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Bitmap state change flushes<span>     </span><span>                 </span>21</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Presumed commit violation<span>                         </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Securefile direct-write lob update flush<span>          </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">es</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">19 rows selected.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">And in session 1,</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; select n.name, s.value from v$statname n, v$sesstat s</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>2<span>  </span>where n.statistic# = s.statistic#</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>3<span>  </span>and s.sid = (select sid from v$mystat where rownum = 1)</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>4<span>  </span>and n.name in (&#8216;IMU Flushes&#8217;,'IMU commits&#8217;);</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">NAME<span>                                                                  </span>VALUE</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;-</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">IMU commits<span>                                                               </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">IMU Flushes<span>                                                               </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">We do some change in the data in session 1,</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; insert into a select * from a;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">68864 rows created.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; select n.name, s.value from v$statname n, v$sesstat s</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>2<span>  </span>where n.statistic# = s.statistic#</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>3<span>  </span>and s.sid = (select sid from v$mystat where rownum = 1)</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>4<span>  </span>and n.name in (&#8216;IMU Flushes&#8217;,'IMU commits&#8217;);</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">NAME<span>                       </span><span>                                           </span>VALUE</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;-</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">IMU commits<span>                                                               </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">IMU Flushes<span>                                            </span><span>                   </span>1</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">And we have got a flush happened as the data generated is too much big. Lets see in session 2,</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; /</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">KTIFFCAT<span>                                   </span>KTIFFFLC</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;-</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Undo pool overflow flushes<span>  </span><span>                      </span>1</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Stack cv flushes<span>                                  </span>9</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Multi-block undo flushes<span>                          </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Max. chgs flushes<span>                                 </span>2</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">NTP flushes<span>                                       </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Contention flushes<span>      </span><span>                          </span>9</span></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:small;"><span style="font-family:Times New Roman;">Redo pool overflow flushes<span>                        </span>1</span></span></strong></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Logfile space flushes<span>                             </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Multiple persistent buffer flushes<span>                </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Bind time flushes<span>                                 </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:small;"><span style="font-family:Times New Roman;">Rollback flushes<span>    </span><span>                            </span>353</span></span></strong></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:small;"><span style="font-family:Times New Roman;">Commit flushes<span>                                 </span>1654</span></span></strong></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Recursive txn flushes<span>                             </span>2</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Redo only CR flushes<span>                              </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Ditributed txn flushes<span>                            </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Set txn use rbs flushes<span>                           </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Bitmap state change flushes<span>                      </span>21</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Presumed commit violation<span>                         </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Securefile direct-write lob update flush<span>          </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">es</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">19 rows selected.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">After some more changes in session 1,</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; insert into a select * from a;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">137728 rows created.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; where n.statistic# = s.statistic#</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SP2-0734: unknown command beginning &#8220;where n.st&#8230;&#8221; &#8211; rest of line ignored.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; select n.name, s.value from v$statname n, v$sesstat s</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>2<span>  </span>where n.statistic# = s.statistic#</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>3<span>  </span>and s.sid = (select sid from v$mystat where rownum = 1)</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>4<span>  </span>and n.name in (&#8216;IMU Flushes&#8217;,'IMU commits&#8217;);</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">NAME<span>                                                                  </span>VALUE</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;-</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">IMU commits<span>                                                               </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">IMU Flushes<span>                                                               </span>1</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; commit;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Commit complete.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; select n.name, s.value from v$statname n, v$sesstat s</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>2<span>  </span>where n.statistic# = s.statistic#</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>3<span>  </span>and s.sid = (select sid from v$mystat where rownum = 1)</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>4<span>  </span>and n.name in (&#8216;IMU Flushes&#8217;,'IMU commits&#8217;);</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">NAME<span>                                                                  </span>VALUE</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;-</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">IMU commits<span>                                                               </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">IMU Flushes<span>                                                               </span>1</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">We see again session 1,</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt;<span>  </span>/</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">KTIFFCAT <span>                                  </span>KTIFFFLC</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;-</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Undo pool overflow flushes<span>                        </span>1</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Stack cv flushes<span>                                  </span>9</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Multi-block undo flushes<span>                          </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Max. chgs flushes<span>                                 </span>2</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">NTP flushes<span>                                       </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:small;"><span style="font-family:Times New Roman;">Contention flushes<span>                               </span>10</span></span></strong></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Redo pool overflow flushes<span>                        </span>1</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Logfile space flushes<span>                             </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Multiple persistent buffer flushes<span>                </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Bind time flushes<span>                                 </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:small;"><span style="font-family:Times New Roman;">Rollback flushes<span>                                </span>359</span></span></strong></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:small;"><span style="font-family:Times New Roman;">Commit flushes<span>                                 </span>1688</span></span></strong></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Recursive txn flushes<span>                            </span><span> </span>2</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Redo only CR flushes<span>                              </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Ditributed txn flushes<span>                            </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Set txn use rbs flushes<span>                           </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Bitmap state change flushes<span>                      </span>21</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Presumed commit violation<span>                    </span><span>     </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Securefile direct-write lob update flush<span>          </span>0</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">es</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">19 rows selected.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;">This is worth to mention that the same kind of mechanism was introduced by Oracle earlier with the help of <strong>Discrete Transaction Management, </strong></span></span><a href="http://download.oracle.com/docs/cd/B10501_01/server.920/a96524/c17trans.htm#421"><span style="font-size:small;font-family:Times New Roman;">http://download.oracle.com/docs/cd/B10501_01/server.920/a96524/c17trans.htm#421</span></a></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">But this didn’t work out too well as the DTM used to pin the data blocks during the transaction. When the transaction used to get committed than the data was written to the redo logs.<span>  </span>In private redo, no pinning of the data blocks is done. Hence they are much better than DTM.<span>  </span>DTM is obsolete now. </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:small;"><span style="font-family:Times New Roman;">Private Redo Strands( Private Redo )</span></span></strong></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Earlier there was a single redo allocation latch available for the entire log buffer. This was a major contention point as till the time one won’t be able to pin the latch, he wont be able to write his changed redo vectors in the log buffer. From 10.1 onwards, the log buffer is broken in to smaller sub-buffers called Private Redo Strands(shown in the x$kcrfstrand). These are also allocated in the shared pool. These all are written by redo allocation latches. There are allocation latches now for each private strand. The data when changed now, doesn’t contend to go into the log buffer as like before but goes into the private redo strands and from there, it goes into the log buffer when the buffer pools become full or when the transaction is committed.<span>  </span>We can see the private strands shown in the shared pool from the V$sgastat</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">SQL&gt; select name,pool from V$sgastat</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:Times New Roman;"><span>  </span>2<span>  </span>where name like &#8216;%private%&#8217;;</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">NAME<span>                       </span>POOL</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8212;&#8212;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">private strands<span>            </span>shared pool</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">KCB private handles<span>        </span>shared pool</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">At log file switch , when the data is still is in the Private redo strands, lgwr may wait to get the flush done by DBWR. Hence the event, log file switch (private strand flush incomplete) may occur. See the doc note for it, </span></p>
<p class="MsoNormal" style="margin:0;"><a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/waitevents003.htm#sthref3117"><span style="font-size:small;font-family:Times New Roman;">http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/waitevents003.htm#sthref3117</span></a></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">This is controlled by the parameter _log_parallelism which is a dynamic and hidden parameter in 10g. The value depends on the cpu_count parameter. Oracle starts with 2 strands. </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">The benefit of private redo strand is also for the same reason that this would make the LGWR less busy and also the contention over the redo allocation latches will decrease. </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">Reference:</span></p>
<p class="MsoNormal" style="margin:0;"><cite><span style="font-family:Arial;"><a href="http://www.tanelpoder.com/files/Oracle_Performance_Scalability_10g_11g.pdf"><span style="font-size:small;"><span style="color:#800080;"><span style="font-style:normal;">www.tanel</span><strong><span style="font-style:normal;">poder</span></strong><span style="font-style:normal;">.com/files/Oracle_Performance_Scalability_10g_11g.pdf</span></span></span></a></span></cite></p>
<p class="MsoNormal" style="margin:0;"><span style="color:black;"><a href="https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;p_id=372557.1"><span style="font-size:small;color:#800080;font-family:Times New Roman;">Metalink note 372557.1</span></a></span></p>
<p class="MsoNormal" style="margin:0;"><a href="http://www.fortunecity.com/skyscraper/oracle/699/orahtml/hayden/discrete.html"><span style="font-size:small;color:#800080;font-family:Times New Roman;">http://www.fortunecity.com/skyscraper/oracle/699/orahtml/hayden/discrete.html</span></a></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/oracleadmins.wordpress.com/60/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/oracleadmins.wordpress.com/60/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oracleadmins.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oracleadmins.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oracleadmins.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oracleadmins.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oracleadmins.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oracleadmins.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oracleadmins.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oracleadmins.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oracleadmins.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oracleadmins.wordpress.com/60/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oracleadmins.wordpress.com&blog=4402853&post=60&subd=oracleadmins&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oracleadmins.wordpress.com/2008/08/30/a-new-learning-imu-private-redo-strand/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">AmanAlchemist</media:title>
		</media:content>
	</item>
	</channel>
</rss>