<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://www.ora600.be" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Oracle ORA600 News Aggregator</title>
 <link>http://www.ora600.be/oracle-news-rss</link>
 <description>Rss on news feed</description>
 <language>en</language>
<item>
 <title>The Bottom Line About Oracle Deadlocks (Sequel to It Was a Dark and Stormy Night)</title>
 <link>http://www.ora600.be/news/bottom-line-about-oracle-deadlocks-sequel-it-was-dark-and-stormy-night</link>
 <description>Here’s the bottom line to my last post It Was a Dark and Stormy Night (A Story About Deadlocks):
Oracle Database handles deadlocks differently than other database engines such as SQL Server and DB2. The transaction of the selected victim is not rolled back; only its last statement is rolled back. All the other participants in the [...]&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://stats.wordpress.com/b.gif?host=iggyfernandez.wordpress.com&amp;amp;blog=6627161&amp;amp;post=1464&amp;amp;subd=iggyfernandez&amp;amp;ref=&amp;amp;feed=1&quot; /&gt;</description>
 <pubDate>Tue, 09 Mar 2010 21:59:44 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8186 at http://www.ora600.be</guid>
</item>
<item>
 <title>Hotsos Symposium 2010 — Battle Against Any Guess Is Won</title>
 <link>http://www.ora600.be/news/hotsos-symposium-2010-%E2%80%94-battle-against-any-guess-won</link>
 <description>&lt;p&gt;&lt;em&gt;Video fragments of my session posted at the end &amp;#8212; read on.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I arrived at &lt;a href=&quot;http://www.omnihotels.com/FindAHotel/DallasMandalay.aspx&quot;&gt;Omni Mandalay Hotel&lt;/a&gt; on Sunday evening with &lt;a href=&quot;http://www.dannorris.com/&quot;&gt;Dan Norris&lt;/a&gt;. I was flying through Chicago and it turned out that Dan was on the same flight and only few rows behind me. Small world.&lt;/p&gt;
&lt;p&gt;Preparations for the conference were very chaotic on my part and, of course, I didn&amp;#8217;t have either of my presentations ready. I was very stressed and getting sick as well &amp;#8212; it looked like a complete disaster waiting to happen. I&amp;#8217;d like to say that I was feeling like &lt;a href=&quot;http://oracledoug.com/serendipity/&quot;&gt;Doug Burns&lt;/a&gt; as he often managed to get sick just before a conference. Of course, I worked on my slides for the last few days as well as on the flight and presentation was slowly getting there but boy was I tired!&lt;/p&gt;
&lt;p&gt;I quickly said hello to the crowd in the bar on the way to my room and rushed away to do some more damage to my slides. And then I had a brilliant idea &amp;#8212; I could still see one of my best mates and do something good about my presentation! I asked Doug if he was interested in the preview (he probably wasn&amp;#8217;t interested but he couldn&amp;#8217;t say it to me) especially that my session wasn&amp;#8217;t on his &lt;a href=&quot;http://oracledoug.com/serendipity/index.php?/archives/1574-Hotsos-2010-My-Agenda.html&quot;&gt;original agenda&lt;/a&gt;. Of course, that would mean that he had to leave a bunch of other good friends and spend some time tete-a-tete. Knowing Doug, this is some of the hardest thing to ask from him but it shows how good of a friend he is! &lt;em&gt;(Plus, everyone thinks that he is anti-social anyway. Shhhh!)&lt;/em&gt;&lt;br /&gt;
&lt;br /&gt;
Doug has made my day &amp;#8212; while he provided lots of ideas and feedback on few things that I was lucking, he generally approved the idea and confirmed that it wasn&amp;#8217;t totally crazy. I guess that was all I needed back then and Doug knew how nervous I was about it. (Thanks mate!)&lt;/p&gt;
&lt;p&gt;So I called Sunday a day very early and went to bed before midnight. I really needed some sleep. Woken up by the alarm at 5AM (I woke up few times during the night looking at the clock &amp;#8212; making sure I didn&amp;#8217;t sleep through) and slides were ready just before lunch. I even managed to do a test run and it took 65 minutes &amp;#8212; a wee bit too long for one hour session. But it was good test and I knew I had to be just a bit more concise in few parts.&lt;/p&gt;
&lt;p&gt;Mi morning was very productive. Unfortunately, I missed the opening keynote from Tom Kyte. Such a pity! If what Doug wrote is true, Tom was talking about &lt;a href=&quot;http://oracledoug.com/serendipity/index.php?/archives/1578-Hotsos-2010-Day-2-The-conference-begins.html&quot;&gt;the mistakes we make *because* of our experience and our assumptions&lt;/a&gt;. This was exactly one of the points I was making in my Battle Against Any Guess &amp;#8212; experience is danger. I wish I could see Tom&amp;#8217;s example. Oh well, maybe another time.&lt;/p&gt;
&lt;p&gt;I managed to attend half of the &lt;a href=&quot;http://richardfoote.wordpress.com/&quot;&gt;Richard Foote&lt;/a&gt;&amp;#8217;s session on indexes but my mind was far away &amp;#8212; with my own slides. Though, I did manage to focus on bitmap indexes part and the &lt;a href=&quot;http://richardfoote.wordpress.com/2010/03/03/1196/&quot;&gt;myth of bitmap indexes&lt;/a&gt; not working well for columns with high cardinality. Very interesting conclusions. I&amp;#8217;m still wondering how much overhead updates will do to such bitmap index.&lt;/p&gt;
&lt;p&gt;After lunch, it was my turn. I ordered few copies of the latest OakTable book &amp;#8212; &lt;a href=&quot;http://apress.com/book/view/1430226684&quot;&gt;Expert Oracle Practices: Oracle Database Administration from the Oak Table&lt;/a&gt; &amp;#8212; that I co-authored with the bunch of other Oakies. I contributed chapter 1 in the book titled just like my presentation &amp;#8212; Battle Against Any Guess. The plan was to give a copy away during the presentation and do a draw for another one at the end of the session. I was so nervous that I forgot about it until the end of the session so I just did a draw for two copies. The lucky winners were Lynn-Georgia Tesch and Surendra Anchula. Congratulations! For the rest of you who left the contact details &amp;#8212; please stay tuned and we&amp;#8217;ll organize few things online.&lt;/p&gt;
&lt;p&gt;Now the main topic of this post &amp;#8212; my presentation. What&amp;#8217;s unusual about this session is that it&amp;#8217;s not some technical stuff that I usually do but a more conceptual and motivational talk. Could I pull it off? Well, I think it went fairly well in general even though I did identify few rough places and my lack of English language mastering. Might need to work a little bit more on the flow of the presentation.&lt;/p&gt;
&lt;p&gt;We had quite a few good laughs. Later, people in the next hall were asking about it and Dan was making the jokes on the stage so it must have been loud. Anyway, I think nobody fell asleep and I managed to get people thinking about the topic. I received many &amp;#8220;thank you&amp;#8221; notes yesterday and compliments on a good session so by the end of the day I was more and more pleased. Thanks everyone for attending and especially big thanks to those of you who brought to my attention examples from their own battles. If you have more to discuss &amp;#8212; contact me by email (my last name) {at} pythian.com.&lt;/p&gt;
&lt;p&gt;Thanks to &lt;a href=&quot;http://www.liberidu.com/blog/&quot;&gt;Marco Gralike&lt;/a&gt; for recording some fragments and sharing them. I think he has more to come.&lt;/p&gt;
&lt;p&gt;This is the introductory couple minutes. You can definitely notice how nervous I am starting on the stage:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Solving the wrong problem example:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s all for now. Stay tuned &amp;#8212; more to come.&lt;/p&gt;</description>
 <pubDate>Tue, 09 Mar 2010 21:16:51 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8188 at http://www.ora600.be</guid>
</item>
<item>
 <title>Fun with Filters</title>
 <link>http://www.ora600.be/news/fun-filters</link>
 <description>&lt;p&gt;This post is about the importance of filter statements in execution plans and how they can indicate problems that are not always apparent.&lt;/p&gt;
&lt;p&gt;I had a problem recently with some code that had gone rogue – it had been running in a few seconds, being executed every 10 minutes or so. Now it ran until either someone killed it off or it got “snapshot too old” errors. I pretty much knew it was prompted by stats being gathered on the tables in question as we had just gathered stats on the tables in that schema. &lt;/p&gt;
&lt;p&gt;The code was something like this (it is not too important what exactly the code was). Oh, and this is on 10.2.0.3, enterprise edition with partitioning.&lt;/p&gt;
select  accounted, max(recorded_date),count(*)
from W_LCG_OPENING_
where accountid||DATA_SRC_COUNTRY_ID in
     (
       SELECT accountid||DATA_SRC_COUNTRY_ID FROM W_LCG_OPENING_
       minus
       SELECT  accountid ||DATA_SRC_COUNTRY_ID FROM W_LCG_CLIENT_
      )
   and 1= 1 – this is pointless, it replaces a check of “run”=”run”
   group by accountid,DATA_SRC_COUNTRY_ID
&lt;p&gt;Those tables are quite large, several million rows in each. The code is basically scanning all of the rows in the table as there are no indexes to support the query and it is written in a way that, well, I would not write it.&lt;/p&gt;
&lt;p&gt;Digging around in some monitoring tools I use I confirmed that the code has swapped plan&lt;/p&gt;
inst SQL_ID        Plan Hash   First Load   execs
---- ------------- ----------- ------------ ------
  TOT_ROWS       TOT_BG      TOT_DR        TOT_CPU    CREATED_DT
---------- ------------ ----------- --------------  ------------
   3 1t7ma4xn3rw46  3183284037 100203 09:10     125
     7,854     6,457,885   1208,149    816,476,585  091020 10:27
   3 1t7ma4xn3rw46  3127554972 100206 09:13       2
         0  1260,936,642        980  94599,678,960  100205 09:19
&lt;p&gt;Version 1 comes back in 5 or 6 seconds. Version 2 does not effectively come back, which is why it records 0 rows. You can see that the Disk Gets are pretty low in version 2 (allowing that it was never left to finish) but Buffer Gets and CPU are both  massively up.  So much so, it exceeds where I format the numbers with comas (as, if they are THAT big, they need fixing anyway).&lt;/p&gt;
&lt;p&gt;I looked at the plans and, though they were different, nothing jumped out at me. So I trimmed down the code and built it up section by section until I saw something significant change. This is my general mode of tuning code if nothing initially occurs to me.&lt;br /&gt;
As usual, I started with any scalar or inline code, in this case that SELECT&amp;#8230;MINUS&amp;#8230;SELECT in the where clause.&lt;/p&gt;
SELECT accountid||DATA_SRC_COUNTRY_ID FROM W_LCG_OPENING_
Minus
SELECT  accountid ||DATA_SRC_COUNTRY_ID FROM W_LCG_CLIENT_
&lt;p&gt;This came back in 3.145 seconds, with all of 62 rows. That is fine.&lt;/p&gt;
&lt;p&gt;Now I added back the use of the MINUS code as a  WHERE clause to the outer query.&lt;/p&gt;
select accountid
from  W_LCG_OPENING_
where accountid||DATA_SRC_COUNTRY_ID in
     (
       SELECT accountid||DATA_SRC_COUNTRY_ID FROM W_LCG_OPENING_
       minus
       SELECT  accountid ||DATA_SRC_COUNTRY_ID FROM W_LCG_CLIENT_
      ) 
&lt;p&gt;This came back in 5.22 seconds with 4468 records. Again, I can live with that, we do not need sub-second response, we need sub-minute response.&lt;/p&gt;
&lt;p&gt;So I now added back in the group by accountid&amp;#8230;&lt;/p&gt;
select accountid,count(*)
from W_LCG_OPENING_
where accountid||DATA_SRC_COUNTRY_ID in
     (
       SELECT accountid||DATA_SRC_COUNTRY_ID FROM W_LCG_OPENING_
       minus
       SELECT  accountid ||DATA_SRC_COUNTRY_ID FROM W_LCG_CLIENT_
      )
group by accountid
&lt;p&gt;This does not come back before I have fetched and consumed a cup of tea. That is a significant change.&lt;/p&gt;
&lt;p&gt;I was not expecting this, why would sorting under 5 thousand rows stress a database that can scan multi-million row tables in seconds? There is all that CPU being burned up and huge numbers of buffer gets, but not much in the way of disc IO, so it is probably doing something that can be done in memory a very, very large number of times.&lt;/p&gt;
&lt;p&gt;What is the difference in plan? {Oh &lt;em&gt;HELL&lt;/em&gt;, they look rubbish &amp;#8211; sorry, click on the images to blow them up, I&amp;#8217;d suggest right-click and open in a new tab, and, YES, I am working on making my blog a little more &amp;#8220;wide and friendly&amp;#8221;.}. Good plan first, bad plan second&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://mwidlake.files.wordpress.com/2010/03/plan_good.gif&quot;&gt;&lt;img src=&quot;http://mwidlake.files.wordpress.com/2010/03/plan_good.gif?w=459&amp;amp;h=122&quot; alt=&quot;&quot; title=&quot;The Good Plan&quot; width=&quot;459&quot; height=&quot;122&quot; class=&quot;aligncenter size-full wp-image-803&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://mwidlake.files.wordpress.com/2010/03/plan_bad.gif&quot;&gt;&lt;img src=&quot;http://mwidlake.files.wordpress.com/2010/03/plan_bad.gif?w=460&amp;amp;h=132&quot; alt=&quot;&quot; title=&quot;The Bad Plan&quot; width=&quot;460&quot; height=&quot;132&quot; class=&quot;aligncenter size-full wp-image-800&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The view step has disappeared, which was an expensive step so should help not hinder.&lt;br /&gt;
The “SORT GROUP BY” has appeared, which it would do as we introduced the “GROUP BY” clause.&lt;br /&gt;
The hash join has &lt;em&gt;been replaced with a filter&lt;/em&gt;. In a more complex plan you might miss this replacement, you would maybe notice the hash join disappearing but a filter, well, it is checking some simple “WHERE” clause isn’t it?&lt;/p&gt;
&lt;p&gt;Well, the hash join was joining the results coming from the two steps feeding into it, the PARTITION RANGE FULL and the VIEW (which is the in-memory construct of the SELECT..MINUS&amp;#8230;SELECT statement).&lt;/p&gt;
&lt;p&gt;Now the Filter is filtering the results from the PARTITION RANGE ALL with the results from the MINUS.  At this point I’d like to highlight that the predicted cardinality and bytes coming back for the steps within the union have reduced by a factor of 100 from the good and bad plans. And I’ll also admit I hid some key detail in the screen shot. I am not showing the access and filter predicates.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://mwidlake.files.wordpress.com/2010/03/plan_good_pred.gif&quot;&gt;&lt;img src=&quot;http://mwidlake.files.wordpress.com/2010/03/plan_good_pred.gif?w=460&amp;amp;h=114&quot; alt=&quot;&quot; title=&quot;The Good Plan&amp;#039;s prediactes&quot; width=&quot;460&quot; height=&quot;114&quot; class=&quot;aligncenter size-full wp-image-804&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
The above is a screen shot showing that in the new code there are no filter predicates but an access predicate, for the access to the view (ie the select&amp;#8230;minus&amp;#8230;select). For easier reading, the full access predicate is below, rather than in the screen shot:&lt;/p&gt;
&lt;p&gt;&amp;#8220;$nso_col_1&amp;#8243;=TO_CHAR(&amp;#8220;ACCOUNTID&amp;#8221;)||TO_CHAR(&amp;#8220;DATA_SRC_COUNTRY_ID&amp;#8221;)&lt;/p&gt;
&lt;p&gt;However, for the slow code, there are no access predicated but are filter predicates. Again, the screen shot shows that there are predicates and I show the full text below. (Screen shots are from PL/SQL developer, btw).&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://mwidlake.files.wordpress.com/2010/03/plan_bad_pred.gif&quot;&gt;&lt;img src=&quot;http://mwidlake.files.wordpress.com/2010/03/plan_bad_pred.gif?w=460&amp;amp;h=114&quot; alt=&quot;&quot; title=&quot;The Bad Plan&amp;#039;s Predicates&quot; width=&quot;460&quot; height=&quot;114&quot; class=&quot;aligncenter size-full wp-image-802&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
2- EXISTS ( (SELECT /*+ */ TO_CHAR(&amp;#34;ACCOUNTID&amp;#34;)
   ||TO_CHAR(&amp;#34;DATA_SRC_COUNTRY_ID&amp;#34;)
FROM &amp;#34;W_LCG_OPENING_&amp;#34; &amp;#34;W_LCG_OPENING_&amp;#34;
WHERE TO_CHAR(&amp;#34;ACCOUNTID&amp;#34;)||TO_CHAR(&amp;#34;DATA_SRC_COUNTRY_ID&amp;#34;)=TO_CHAR(:B1)||TO_CHAR(:B2))
MINUS (SELECT /*+ */ TO_CHAR(&amp;#34;ACCOUNTID&amp;#34;)||TO_CHAR(&amp;#34;DATA_SRC_COUNTRY_ID&amp;#34;)
FROM &amp;#34;W_LCG_CLIENT_&amp;#34; &amp;#34;W_LCG_CLIENT_&amp;#34;
WHERE TO_CHAR(&amp;#34;ACCOUNTID&amp;#34;)||TO_CHAR(&amp;#34;DATA_SRC_COUNTRY_ID&amp;#34;)=TO_CHAR(:B3)||TO_CHAR(:B4)))	

8- TO_CHAR(&amp;#34;ACCOUNTID&amp;#34;)||TO_CHAR(&amp;#34;DATA_SRC_COUNTRY_ID&amp;#34;)=TO_CHAR(:B1)||TO_CHAR(:B2)	

10- TO_CHAR(&amp;#34;ACCOUNTID&amp;#34;)||TO_CHAR(&amp;#34;DATA_SRC_COUNTRY_ID&amp;#34;)=TO_CHAR(:B1)||TO_CHAR(:B2)	
&lt;p&gt;Basically, the filter is to run the union query for &lt;strong&gt;every row from the driving query&lt;/strong&gt;, passing in the relevant filter clause as an extra predicate to each of the individual queries of the SELECT&amp;#8230;MINUS&amp;#8230;SELECT&lt;/p&gt;
&lt;p&gt;Clever, but not of much help to us as the performance is awful.&lt;/p&gt;
&lt;p&gt;I showed this to a colleague and their immediate response was “why does that not show up as a nested loop? How am I supposed to spot that the “filter” is doing so much?&amp;#8221; There were a couple of robust Saxon words mixed in with that statement.&lt;/p&gt;
&lt;p&gt;So, Beware Filters replacing joins and get in the habit of checking out the filter and access predicates&lt;/p&gt;
&lt;p&gt;If you use an old-style template for showing plans {like I do, a guilty sin of mine}, or a GUI where you have not selected that the filter and access predicates be shown, you may well not get them displayed. If you use autotrace in SQL*Plus, you will though:&lt;/p&gt;
db3_mw&amp;#62; select accountid,count(*)
  2  from W_LCG_OPENING_
  3  where accountid||DATA_SRC_COUNTRY_ID in
  4       (
  5         SELECT accountid||DATA_SRC_COUNTRY_ID FROM W_LCG_OPENING_
  6         minus
  7         SELECT  accountid ||DATA_SRC_COUNTRY_ID FROM W_LCG_CLIENT_
  8        )
  9  group by accountid
 10  /

Execution Plan
----------------------------------------------------------
Plan hash value: 397856216

--------------------------------------------------------------------------------
| Id  | Operation                | Name             | Rows  | Bytes | Cos
t (%CPU)| Time     | Pstart| Pstop |
--------------------------------------------------------------------------------
|   0 | SELECT STATEMENT         |                  |   911 |  7288 |
15M  (7)| 17:25:41 |       |       |
|   1 |  SORT GROUP BY           |                  |   911 |  7288 |
15M  (7)| 17:25:41 |       |       |
|*  2 |   FILTER                 |                  |       |       |
        |          |       |       |
|   3 |    PARTITION RANGE ALL   |                  |  3153K|    24M|  83
11   (4)| 00:00:34 |     1 |   840 |
|   4 |     TABLE ACCESS FULL    | W_LCG_OPENING_   |  3153K|    24M|  83
11   (4)| 00:00:34 |     1 |   840 |
|   5 |    MINUS                 |                  |       |       |
        |          |       |       |
|   6 |     SORT UNIQUE NOSORT   |                  | 31535 |   246K|  86
15   (7)| 00:00:35 |       |       |
|   7 |      PARTITION RANGE ALL |                  | 31535 |   246K|  86
11   (7)| 00:00:35 |     1 |   840 |
|*  8 |       TABLE ACCESS FULL  | W_LCG_OPENING_   | 31535 |   246K|  86
11   (7)| 00:00:35 |     1 |   840 |
|   9 |     SORT UNIQUE NOSORT   |                  |   132 |  1056 |
17  (18)| 00:00:01 |       |       |
|* 10 |      INDEX FAST FULL SCAN| W_LCG_CLIENT__PK |   132 |  1056 |
16  (13)| 00:00:01 |       |       |
--------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   2 - filter( EXISTS ( (SELECT /*+ */ TO_CHAR(&amp;#34;ACCOUNTID&amp;#34;)||TO_CHAR(&amp;#34;DATA_SRC_C
OUNTRY_ID&amp;#34;) FROM
              &amp;#34;W_LCG_OPENING_&amp;#34; &amp;#34;W_LCG_OPENING_&amp;#34; WHERE
              TO_CHAR(&amp;#34;ACCOUNTID&amp;#34;)||TO_CHAR(&amp;#34;DATA_SRC_COUNTRY_ID&amp;#34;)=TO_CHAR(:B1)|
|TO_CHAR(:B2))MINUS (SELECT /*+ */
              TO_CHAR(&amp;#34;ACCOUNTID&amp;#34;)||TO_CHAR(&amp;#34;DATA_SRC_COUNTRY_ID&amp;#34;)
FROM &amp;#34;W_LCG_CLIENT_&amp;#34;
              &amp;#34;W_LCG_CLIENT_DETAILS&amp;#34; WHERE TO_CHAR(&amp;#34;ACCOUNTID&amp;#34;)||TO_CHAR(&amp;#34;DATA_S
RC_COUNTRY_ID&amp;#34;)=TO_CHAR(:B3)||TO_CHAR(:B4)
              )))
   8 - filter(TO_CHAR(&amp;#34;ACCOUNTID&amp;#34;)||TO_CHAR(&amp;#34;DATA_SRC_COUNTRY_ID&amp;#34;)=TO_CHAR(:B1)|
|TO_CHAR(:B2))
  10 - filter(TO_CHAR(&amp;#34;ACCOUNTID&amp;#34;)||TO_CHAR(&amp;#34;DATA_SRC_COUNTRY_ID&amp;#34;)=TO_CHAR(:B1)|
|TO_CHAR(:B2)) 
&lt;p&gt;What did I do to fix the problem? Well, even though the code originally went bad due to stats being gathered, I could not force it back to a nice plan after an hour or two playing with gathering new stats so, in this case, I used an UNNEST hint.&lt;/p&gt;
select accountid,count(*)
from W_LCG_OPENING_
where accountid||DATA_SRC_COUNTRY_ID in
     (
       SELECT /*+ unnest */ accountid||DATA_SRC_COUNTRY_ID FROM W_LCG_OPENING_
       minus
       SELECT  accountid ||DATA_SRC_COUNTRY_ID FROM W_LCG_CLIENT_
      )
group by accounted
&lt;p&gt;And it forced the plan back to the version using a HASH join.&lt;/p&gt;
&lt;a href=&quot;http://mwidlake.files.wordpress.com/2010/03/plan_hinted.gif&quot;&gt;&lt;img src=&quot;http://mwidlake.files.wordpress.com/2010/03/plan_hinted.gif?w=460&amp;amp;h=119&quot; alt=&quot;&quot; title=&quot;plan_hinted&quot; width=&quot;460&quot; height=&quot;119&quot; class=&quot;size-full wp-image-801&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;The hinted plan&lt;/p&gt;
&lt;p&gt;I’m a little unhappy about that hint, but the code needed fixing and the hint did what I wanted it to {I think it was poor of me to only hint one of the two minus statements and I do not like resorting to hints just because I can’t work out what is “wrong” with the stats – If I work out what is wrong and still need the hint, fair enough}. However, I had to be pragmatic and get the code fixed and working in Live, so it has gone in with a hint&lt;/p&gt;
&lt;br /&gt;  &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gocomments/mwidlake.wordpress.com/798/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/mwidlake.wordpress.com/798/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godelicious/mwidlake.wordpress.com/798/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/mwidlake.wordpress.com/798/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gostumble/mwidlake.wordpress.com/798/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/mwidlake.wordpress.com/798/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godigg/mwidlake.wordpress.com/798/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/mwidlake.wordpress.com/798/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/goreddit/mwidlake.wordpress.com/798/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/mwidlake.wordpress.com/798/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://stats.wordpress.com/b.gif?host=mwidlake.wordpress.com&amp;amp;blog=7382739&amp;amp;post=798&amp;amp;subd=mwidlake&amp;amp;ref=&amp;amp;feed=1&quot; /&gt;</description>
 <pubDate>Tue, 09 Mar 2010 20:15:51 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8187 at http://www.ora600.be</guid>
</item>
<item>
 <title>Hotsos 2010 - Congratulations, Marco!</title>
 <link>http://www.ora600.be/news/hotsos-2010-congratulations-marco</link>
 <description>You managed to capture a couple of minutes of my presentation when there &lt;em&gt;was&lt;/em&gt; a picture on the screen!&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/DougsOracleBlog/~4/4xXKAsivovc&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
 <pubDate>Tue, 09 Mar 2010 18:59:24 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8185 at http://www.ora600.be</guid>
</item>
<item>
 <title>What has Toyota actually proven here?</title>
 <link>http://www.ora600.be/news/what-has-toyota-actually-proven-here</link>
 <description>Interesting article in the Chicago Tribune &lt;a href=&quot;http://bit.ly/9gZDZl&quot;&gt;today&lt;/a&gt;: &quot;Toyota rebuts claims of SIU professor: In webcast, consulting firm re-creates electronic glitch in other vehicle brands&quot;.&lt;br /&gt;&lt;br /&gt;First, David Gilbert demonstrates to Congress a way to cause sudden acceleration in Toyota vehicles.&lt;br /&gt;&lt;br /&gt;Then Toyota countered his demonstration as follows: &quot;Using similar methodology, engineers at Toyota&#039;s facility on Monday duplicated the results on camera in seven other vehicles, including a &lt;a class=&quot;taxInlineTagLink&quot; href=&quot;http://www.chicagotribune.com/topic/services-shopping/vehicles/makes-models/chevrolet-prdcrmk8.topic&quot; title=&quot;Chevrolet&quot; id=&quot;prdcrmk8&quot;&gt;Chevrolet&lt;/a&gt; Malibu, &lt;a class=&quot;taxInlineTagLink&quot; href=&quot;http://www.chicagotribune.com/topic/services-shopping/vehicles/makes-models/honda-prdcrmk13.topic&quot; title=&quot;Honda&quot; id=&quot;prdcrmk13&quot;&gt;Honda&lt;/a&gt; Accord and &lt;a class=&quot;taxInlineTagLink&quot; href=&quot;http://www.chicagotribune.com/topic/services-shopping/vehicles/makes-models/ford-prdcrmk11.topic&quot; title=&quot;Ford&quot; id=&quot;prdcrmk11&quot;&gt;Ford&lt;/a&gt; Fusion. Officials said the results, though not maligning other manufacturers, show that the methodology was essentially flawed.&quot;&lt;br /&gt;&lt;br /&gt;Gee, I don&#039;t know. It seems like you could just as legitimately conclude that the problems experienced by Toyota owners could well be showing up in other vehicles.&lt;br /&gt;&lt;br /&gt;I must admit that as a programmer, it scares me to think that my safety (and the safety of my family members) when driving is so dependent on software.&lt;img width=&quot;1&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/20160325-3006398757840831848?l=feuerthoughts.blogspot.com&quot; alt=&quot;&quot; /&gt;</description>
 <pubDate>Tue, 09 Mar 2010 15:09:00 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8184 at http://www.ora600.be</guid>
</item>
<item>
 <title>A brand-new Oracle product???</title>
 <link>http://www.ora600.be/news/brand-new-oracle-product</link>
 <description>&lt;p&gt;Just came across these yesterday in the &lt;a href=&quot;http://www.yvd.com.au/home/Default.asp&quot; target=&quot;_blank&quot;&gt;Yarra Valley Dairy&lt;/a&gt; (which by the way had excellent goat cheese) and still ask myself if Oracle is emerging now into new  markets:&lt;img alt=&quot;2010_03_09_Melbourne5.jpg&quot; src=&quot;http://blogs.oracle.com/UPGRADE/IMAGES/2010_03_09_Melbourne5.jpg&quot; width=&quot;640&quot; height=&quot;376&quot; class=&quot;mt-image-center&quot; /&gt;Still wondering ... you&#039;ll never know ... ;-)&lt;br /&gt;
&lt;/p&gt;</description>
 <pubDate>Tue, 09 Mar 2010 15:04:15 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8181 at http://www.ora600.be</guid>
</item>
<item>
 <title>Thanks Melbourne!!!</title>
 <link>http://www.ora600.be/news/thanks-melbourne</link>
 <description>&lt;p&gt;We had a great time today with you all - and thanks to the local Oracle folks as well who&#039;d organize everything so well. And the view from the top floor was the best we&#039;ve ever had in a workshop so far :-) Hope you all start your upgrade to 11g Release 2 pretty soon - and we&#039;ll be very happy to get your feedback once you&#039;ve gone live.&lt;br /&gt;
&lt;img alt=&quot;2010_03_09_Melbourne4.jpg&quot; src=&quot;http://blogs.oracle.com/UPGRADE/IMAGES/2010_03_09_Melbourne4.jpg&quot; width=&quot;640&quot; height=&quot;250&quot; class=&quot;mt-image-center&quot; /&gt;&lt;br /&gt;
And - as always - please download the most recent version of the slides from here:&lt;br /&gt;
&lt;strong&gt;&lt;a href=&quot;http://apex.oracle.com/folien&quot; target=&quot;_blank&quot;&gt; http://apex.oracle.com/folien&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;
Use the keyword (Schluesselwort):&lt;strong&gt; upgrade112&lt;/strong&gt;&lt;br /&gt;
&lt;/p&gt;</description>
 <pubDate>Tue, 09 Mar 2010 14:57:25 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8182 at http://www.ora600.be</guid>
</item>
<item>
 <title>Screw up and repair</title>
 <link>http://www.ora600.be/news/screw-and-repair</link>
 <description>I thought it worked - but of course I forgot the Oracle VM Manager on my second machine.&lt;br /&gt;&lt;br /&gt;It still displayed the ServerPool1 that I had created previously. &lt;br /&gt;In order to begin with a clean slate you might need to drop the database in the Oracle VM Server.&lt;br /&gt;&lt;br /&gt;Login to the server as root and execute the following commands:&lt;br /&gt;&lt;br /&gt;service stop ovs-agent&lt;br /&gt;rm -rf /etc/ovs-agent/db&lt;br /&gt;service start ovs-agent&lt;br /&gt;&lt;br /&gt;Then the external disk needs to be added again:&lt;br /&gt;[root@ovm utils]# ./repos.py --new /dev/sdb1&lt;br /&gt;[ NEW ] 6ad759c5-d706-4b3a-9d14-bcffafc61fc3 =&amp;gt; /dev/sdb1&lt;br /&gt;[root@ovm utils]# ./repos.py --list&lt;br /&gt;[   ] 6ad759c5-d706-4b3a-9d14-bcffafc61fc3 =&amp;gt; /dev/sdb1&lt;br /&gt;[root@ovm utils]# ./repos.py --root 6ad759c5-d706-4b3a-9d14-bcffafc61fc3&lt;br /&gt;[ R ] 6ad759c5-d706-4b3a-9d14-bcffafc61fc3 =&amp;gt; /dev/sdb1&lt;br /&gt;&lt;br /&gt;The filesystems were back again and also the directories in /OVS.&lt;br /&gt;&lt;br /&gt;Now back to importing a VM Template.&lt;img width=&quot;1&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/9202254-5604238515972589761?l=achatzia.blogspot.com&quot; alt=&quot;&quot; /&gt;</description>
 <pubDate>Tue, 09 Mar 2010 13:58:07 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8183 at http://www.ora600.be</guid>
</item>
<item>
 <title>Hotsos 2010 - My Presentation</title>
 <link>http://www.ora600.be/news/hotsos-2010-my-presentation</link>
 <description>I really don&#039;t know how to blog about this because every time I feel I&#039;m honestly self-critical, everyone thinks I&#039;m close to suicide or something. I like to think I notice both the good and the bad but am probably more likely to speak openly about the bad. If you ask me it&#039;s a Scottish thing about not getting above yourself or blowing your own trumpet too loudly. Or maybe it&#039;s just that the only way you can improve is by noticing the bad stuff and fixing it? Someone once said to me &amp;quot;&lt;em&gt;You can&#039;t be an insecure overachiever without first being insecure&lt;/em&gt;&amp;quot; &lt;img src=&quot;http://oracledoug.com/serendipity/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; class=&quot;emoticon&quot; /&gt; and they aren&#039;t Scottish, so I shouldn&#039;t generalise. &lt;strong&gt;Updated later - it was Cary Millsap who came up with this line. I loved it when he mentioned it a few months ago and still do.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;In this case I&#039;ll try to be even-handed and &lt;em&gt;finish&lt;/em&gt; with the positives!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Negatives&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;The whole &lt;em&gt;point&lt;/em&gt; of this presentation is that it&#039;s about 50 minutes of demonstrations and about 10 of slides. For the first 30 minutes, the demonstrations would not work. If you think that&#039;s a success, there&#039;s something the matter with you and you should probably never give any presentations!&lt;br /&gt;&lt;br /&gt;This is the killer. In retrospect I &lt;em&gt;know&lt;/em&gt; what the problem was and have fixed it previously with the help of others but did not do the same on the new laptop! As I moved in and out of wireless range, the lack of a network connection at the Windows end completely threw VMWare and my demos. But, believe me, when your demos have been working for a couple of weeks, you don&#039;t have long until your presentation and they stop working intermittently, it&#039;s difficult to be cool and analytical. I was so distracted by other things that might go wrong, I missed one and, having missed it, I wasn&#039;t cool enough to recognise the symptoms. Fortunately, an old Hotsos friend in the room came up with the goods in the form of a little Sprint wireless box that got me hooked up. I kissed him, but there were no tongues involved.&lt;br /&gt;&lt;br /&gt;With only 30 minutes left, there was very little I could show and it completely ruined the whole flow of the presentation, which I&#039;d worked so hard to get right and which I know can be terrific, because I&#039;ve done similar presentations before and had been looking forward to doing the best version yet. People took the time to come and see it, I let them down and I&#039;m sorry about that. Nobody is likely to change my view on that.&lt;br /&gt;&lt;br /&gt;This presentation is a big deal to &lt;em&gt;me&lt;/em&gt;, never mind anyone else. I work hard on these things, try to cover all the angles, take time off work and all because I like teaching people new stuff. When I take a week off to attend a conference, but also to present, it&#039;s a bit of a blow when your one shot fails. If you&#039;re &lt;em&gt;not&lt;/em&gt; passionate about your presentations (and I somehow doubt anyone isn&#039;t) again, you shouldn&#039;t be presenting.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Positives&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;Sh*t happens when you get involved with computers. Yes, folks, I know that, but that&#039;s also why you play around with demos for a long time to minimise the possibility that it will! &lt;br /&gt;&lt;br /&gt;This might not sound like a positive and it&#039;s dangerously close to sounding like an excuse, but the fact is that I&#039;ve had 2 out of 3 presentations go very wrong recently. One of the consistent factors in this is that I switched to VMWare because I had to to run 11gR2 on Windows. It&#039;s not the same as blaming VMWare to say that I&#039;ve been having to deal with stuff I haven&#039;t for a long time. When everyone was talking about VMWare as the way to go for presentations, I remember thinking &#039;I don&#039;t know, just seems like more moving parts that might break to me.&#039; and I kept reading blog posts about demos being broken and then fixed just in time, all of which were on some virtualisation platform or other, but didn&#039;t have the confidence to say something. All I know is, say what you like about Windows, but I&#039;ve hardly ever had a problem in multiple 2-day course teaches of performance and OEM stuff! Still, it&#039;s down to me to get on top of what are some simple issues.&lt;br /&gt;&lt;br /&gt;Listen, I know I can present. No false modesty round here. So, to wrap this up on a positive note, I&#039;m well aware that there are few of the people who I see present who could have managed to get through that first half hour, make people laugh, keep thinking about the problem and manage to get a short demo of Swingbench into the bargain. I think I also managed to salvage something out of the last half of the presentation without completely collapsing into a heap. Sure, I was a bit brain-addled by then, but I would have liked to have seen how others might have coped &lt;img src=&quot;http://oracledoug.com/serendipity/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; class=&quot;emoticon&quot; /&gt; Frankly, I kept waiting for the room to empty (I&#039;ve seen it happen) but the vast majority stuck around to the end. Maybe they were sadists! LOL&lt;br /&gt;&lt;br /&gt;I am not and will never manage to be happy with that presentation but lessons have been learned, it&#039;s just a presentation and there&#039;ll be lots of others. I know that.&lt;br /&gt;&lt;br /&gt;Postive Solution 1 - If anyone wants to try to grab me while I&#039;m at the conference, I&#039;ll show you the screens and demos. They&#039;re very cool &lt;img src=&quot;http://oracledoug.com/serendipity/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Positive Solution 2 - I think Alex Gorbachev might try to arrange for me to repeat the presentation properly as a webinar. I&#039;ve already done this at my current customer site once (on the 10g stuff) and it went reasonably well. I&#039;d also ... &lt;em&gt;get this&lt;/em&gt; ... asked Marco to video it for me yesterday with his snazzy mini-setup because I thought I might post a few bits online if they were particularly good so those that can&#039;t make it to conferences could get a taste of it. Actually, it appeals to my cold, self-deprecating sense of humour to post some of it online soon. I promise I won&#039;t make it too self-flaggelating though! &lt;br /&gt;&lt;br /&gt;P.S. For Paul Vallee. Paul it is &lt;em&gt;not&lt;/em&gt; all good &lt;img src=&quot;http://oracledoug.com/serendipity/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/DougsOracleBlog/~4/OrtpdV1rY9Y&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
 <pubDate>Tue, 09 Mar 2010 13:46:42 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8179 at http://www.ora600.be</guid>
</item>
<item>
 <title>Finally my OVM looks like it should</title>
 <link>http://www.ora600.be/news/finally-my-ovm-looks-it-should</link>
 <description>I rebuild my OVM server for the n-th time this morning. Problem was that it was difficult to have the external disk mounted on the /OVS directory.&lt;br /&gt;I tried to add a shared virtual disk - which I formatted as an ocfs2 disk to the existing disk. I found this excellent posting http://geertdepaep.wordpress.com/2008/06/09/oracle-vm-and-multiple-local-disks/ that described the process and guided me into the correct direction. Although the disk was visible in the repos.py script I was unable to see it in the Oracle VM Manager.&lt;br /&gt;&lt;br /&gt;Now I thought that I need to build the server and format the filesystems myself.&lt;br /&gt;Sorry I have no screenshots here as the installer runs on the machine itself.&lt;br /&gt;During the installation the two disks (internal 50 GB and external 1 TB) are shown as /dev/sda and /dev/sdb. In the disk setup utility in the installer choose the option to define a custom layout.&lt;br /&gt;&lt;br /&gt;The installer offers a predefined layout, which it would normally apply to the available disks.&lt;br /&gt;I decided to have three filesystems on the internal disk. This will be /, /boot and a swap filesystem. On the external disk I gave away the complete disk and formatted it as an ocfs2 filesystem.&lt;br /&gt;During this I received a lot of errors on the screen, stating that there was an error while setting the type of the filesystem to ocfs2. However I continued - ignoring the errors - and finally ended up with this disk layout:&lt;br /&gt;&lt;br /&gt;[root@ovm ~]# df -h&lt;br /&gt;Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;/dev/sda2              54G  953M   50G   2% /&lt;br /&gt;/dev/sda1              99M   45M   49M  48% /boot&lt;br /&gt;tmpfs                 287M     0  287M   0% /dev/shm&lt;br /&gt;/dev/sdb1             931G  315M  931G   1% /var/ovs/mount/6AD759C5D7064B3A9D14BCFFAFC61FC3&lt;br /&gt;[root@ovm ~]# &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;so, now the fun can begin, as I finally got to the point where I have my 1 TB disk fully exposed for my Oracle VM server.&lt;img width=&quot;1&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/9202254-3203062370775750680?l=achatzia.blogspot.com&quot; alt=&quot;&quot; /&gt;</description>
 <pubDate>Tue, 09 Mar 2010 10:06:58 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8178 at http://www.ora600.be</guid>
</item>
<item>
 <title>Chris Date in Edinburgh on 13 and 14 May 2010</title>
 <link>http://www.ora600.be/news/chris-date-edinburgh-13-and-14-may-2010</link>
 <description>In the noise of of all the announcements, blogs, mails, twats (and mostly plain ads), this is one that I want to Recommend.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://www.justsql.co.uk/chris_date/cjd_edin_may_2010.htm&quot; target=&quot;_blank&quot; title=&quot;Chris date is one of the founders of the theory behind relational databases, a must read for serious database professionals.&quot;&gt;Chris Date is doing a Seminar in Edinburgh on 13 and 14 May.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If this seems like total nonsense for you: &lt;a href=&quot;http://www.google.com/search?&amp;amp;q=chris+date&quot; target=&quot;_blank&quot; title=&quot;&quot;&gt;Google Chris Date&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you work with Information Systems and notably with Databases, chances are the work of this man has had an impact on what you do.&lt;br /&gt;&lt;br /&gt;And to better understand what you do, and how you can do it Well, it is worth to read, discuss and understand his work. &lt;br /&gt;&lt;br /&gt;To know where this field of expertise is really going, the work of Chris is probably just as relevant, if not more, then the latest re-naming of crs or asm processes and logfiles.&lt;br /&gt;&lt;br /&gt;I was not kidding when I had Oracle Magazine write up &lt;a href=&quot;http://www.oracle.com/technology/oramag/oracle/10-jan/o10peer.html&quot; title=&quot;Start with the Basics&quot; target=&quot;_blank&quot;&gt;my nr 1 tip&lt;/a&gt; for people who want to get into IT: Get your Basics Knowlege Right. You could do worse then to start with the work of Chris Date.&lt;img width=&quot;1&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/27198934-2566570574525730359?l=pdvfirstblog.blogspot.com&quot; alt=&quot;&quot; /&gt;</description>
 <pubDate>Tue, 09 Mar 2010 08:27:41 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8177 at http://www.ora600.be</guid>
</item>
<item>
 <title>Code Comment WTF?  Part 209</title>
 <link>http://www.ora600.be/news/code-comment-wtf-part-209</link>
 <description>Found this in a snippet today:-- ********************************&lt;br /&gt;-- End of Package Body&lt;br /&gt;&lt;br /&gt;END package_pkg ;&lt;br /&gt;/Seriously?  Was that necessary?  Could I possibly be under the illusion that it is &lt;i&gt;&lt;b&gt;not&lt;/b&gt;&lt;/i&gt; the end of the package?&lt;br /&gt;&lt;br /&gt;Stop it.&lt;br /&gt;&lt;br /&gt;Now.&lt;img width=&quot;1&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/8884584404576003487-875349462869366795?l=www.oraclenerd.com&quot; alt=&quot;&quot; /&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/rRGlclNLo3XpX2e6EO8QRTeK4wM/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/rRGlclNLo3XpX2e6EO8QRTeK4wM/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/rRGlclNLo3XpX2e6EO8QRTeK4wM/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/rRGlclNLo3XpX2e6EO8QRTeK4wM/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Tue, 09 Mar 2010 07:38:00 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8174 at http://www.ora600.be</guid>
</item>
<item>
 <title>APEX: LDAP Authentication</title>
 <link>http://www.ora600.be/news/apex-ldap-authentication</link>
 <description>I got called into a discussion about an existing APEX application.  The custom LDAP functionality wasn&#039;t working as they expected.&lt;br /&gt;&lt;br /&gt;I knew APEX had an LDAP authentication scheme (and don&#039;t know the full history of the project so I can&#039;t (won&#039;t) comment on why it wasn&#039;t used).  So I fired up my local sandbox just to see how easy or hard it was.  Admittedly, I have always avoided anything to do with LDAP...not sure why (plate is full?).  I used &lt;a href=&quot;http://www.oracle.com/technology/products/database/application_express/howtos/how_to_ldap_authenticate.html&quot;&gt;this&lt;/a&gt; as a guide.&lt;br /&gt;&lt;br /&gt;Anyway, it was remarkably easy.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Setup&lt;/b&gt;&lt;br /&gt;APEX:  3.2.1&lt;br /&gt;Web Server: Apache (OHS)&lt;br /&gt;Database:BANNER&lt;br /&gt;----------------------------------------------------------------&lt;br /&gt;Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Prod&lt;br /&gt;PL/SQL Release 10.2.0.3.0 - Production&lt;br /&gt;CORE    10.2.0.3.0      Production&lt;br /&gt;TNS for 32-bit Windows: Version 10.2.0.3.0 - Production&lt;br /&gt;NLSRTL Version 10.2.0.3.0 - ProductionFirst I fired up the web server:C:\oracle\http\opmn\bin&amp;gt;opmnctl start&lt;br /&gt;opmnctl: opmn started&lt;br /&gt;&lt;br /&gt;C:\oracle\http\opmn\bin&amp;gt;opmnctl startproc process-type=HTTP_Server&lt;br /&gt;opmnctl: starting opmn managed processes...Opened up APEX, and created a new application.  For authentication schemes I chose &quot;No Authentication.&quot;&lt;br /&gt;&lt;br /&gt;After I had created the application, I went into Shared Components --&amp;gt; Authentication Schemes --&amp;gt; Create&lt;br /&gt;&lt;br /&gt;Select the default and click Next&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh4.ggpht.com/_rhCtHYLiamQ/S5XpwjkAJuI/AAAAAAABYBY/DI4NcKLKliI/s800/01_apex.jpg&quot; alt=&quot;step 1&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Select &quot;Show Login Page and Use LDAP Directory Credentials&quot; and click Next&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh4.ggpht.com/_rhCtHYLiamQ/S5Xpw3Sb09I/AAAAAAABYBg/dgj_vbP6oXQ/s800/02_apex.jpg&quot; alt=&quot;step 2&quot; /&gt;&lt;br /&gt;&lt;br /&gt;I&#039;ve already done this so I&#039;m selecting my current Login page, 11, click Next&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh4.ggpht.com/_rhCtHYLiamQ/S5XpxaM9ohI/AAAAAAABYBs/VLAcEqGvO8Q/s800/03_apex.jpg&quot; alt=&quot;step 3&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Enter your LDAP Host and your DN:&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh6.ggpht.com/_rhCtHYLiamQ/S5XpyOKAyzI/AAAAAAABYB0/mQwL8tCp-bU/s800/04_apex.jpg&quot; alt=&quot;step 4&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Your DN String should look something like this (from article above):cn=%LDAP_USER%,l=amer,dc=oracle,dc=comMake sure you use the %LDAP_USER% after the cn= portion of the string.&lt;br /&gt;&lt;br /&gt;Name it ldap_test, click Create Scheme:&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh4.ggpht.com/_rhCtHYLiamQ/S5XpyK36NiI/AAAAAAABYB8/Vg_F41wOt-M/s800/05_apex.jpg&quot; alt=&quot;step 5&quot; /&gt;&lt;br /&gt;&lt;br /&gt;You will then be redirected back to the list of Authentication Schemes, ldap_test should now be current&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh5.ggpht.com/_rhCtHYLiamQ/S5XpyX-ij8I/AAAAAAABYCE/Z1srVL3ZSIg/s800/06_apex.jpg&quot; alt=&quot;Fini!&quot; /&gt;&lt;br /&gt;&lt;br /&gt;To test it just run your application and login using your LDAP (AD) credentials&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh5.ggpht.com/_rhCtHYLiamQ/S5Xzp3AAZvI/AAAAAAABYDs/y1-5r3zbwCE/s800/08_apex_login.jpg&quot; alt=&quot;login&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Success!&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh6.ggpht.com/_rhCtHYLiamQ/S5XzqKOEovI/AAAAAAABYD4/kismnUwQUwA/s800/09_success.jpg&quot; alt=&quot;success!!&quot; /&gt;&lt;img width=&quot;1&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/8884584404576003487-6066666730391546161?l=www.oraclenerd.com&quot; alt=&quot;&quot; /&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/s5wbf8GAYD2opTdFst8Mi61oQA8/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/s5wbf8GAYD2opTdFst8Mi61oQA8/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/s5wbf8GAYD2opTdFst8Mi61oQA8/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/s5wbf8GAYD2opTdFst8Mi61oQA8/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Tue, 09 Mar 2010 07:09:00 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8175 at http://www.ora600.be</guid>
</item>
<item>
 <title>V$SESSION_LONGOPS – Where’s My SQL Statement</title>
 <link>http://www.ora600.be/news/vsessionlongops-%E2%80%93-where%E2%80%99s-my-sql-statement</link>
 <description>&lt;p&gt;March 9, 2010&lt;/p&gt;
&lt;p&gt;A &lt;a href=&quot;http://forums.oracle.com/forums/thread.jspa?threadID=1039554&amp;amp;tstart=0&quot; target=&quot;_blank&quot;&gt;question&lt;/a&gt; recently appeared on the OTN forums that stated the following:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;I have a query joining 4 tables and it returns 48 million. I have used /+parallel(tablename,4) */ hint with the select clause. I want to the 48 million returned by the query to another table t2.&lt;/p&gt;
&lt;p&gt;I do get the select result in 20 minutes. when I am performing insert, I checked gv$session_longops. I usually check like select * from gv$session_longops where time_remaining&amp;#62;0.&lt;/p&gt;
&lt;p&gt;It didnt return anything. I removed the where clause and rather gave the sid.(i found the sql_id from gv$session)&lt;/p&gt;
&lt;p&gt;select * from gv$session_longops where sql_id=&amp;#8217;XXXXXXX&amp;#8217;;&lt;/p&gt;
&lt;p&gt;I got 3 rows but time_remaining column is 0. Could someone explain why this is so.&lt;/p&gt;
&lt;p&gt;OS: Linux&lt;br /&gt;
DB:11.1.0.6.0 &amp;#8211; 11g&lt;br /&gt;
Rac- 2 node RAC&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;So what is happening, why does GV$SESSION_LONGOPS show 3 rows for the SQL statement, all with the TIME_REMAINING column set to 0?  This is a good question, but I do not know if there is a straight-forward answer for the question.  Possibly one of the first questions to ask is: &lt;em&gt;What is the SQL statement, and what does its execution plan look like?&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;It probably makes sense to check the documentation for the GV$SESSION_LONGOPS view (or more accurately, the documentation for the single instance &lt;a href=&quot;http://download.oracle.com/docs/cd/E11882_01/server.112/e10820/dynviews_3021.htm&quot; target=&quot;_blank&quot;&gt;V$SESSION_LONGOPS&lt;/a&gt; view):&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;#8220;V$SESSION_LONGOPS displays the status of various operations that run for longer than 6 seconds (in absolute time). These operations currently include many backup and recovery functions, statistics gathering, and query execution, and more operations are added for every Oracle release.&lt;/p&gt;
&lt;p&gt;To monitor query execution progress, you must be using the cost-based optimizer and you must:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Set the TIMED_STATISTICS or SQL_TRACE parameters to true&lt;/li&gt;
&lt;li&gt;Gather statistics for your objects with the ANALYZE statement or the DBMS_STATS package&amp;#8221;&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;From the above, having the TIMED_STATISTICS parameter set to FALSE or failing to gather the statistics for the objects using DBMS_STATS are two possible reasons for the TIME_REMAINING column being set to 0.  Any other ideas?  Where is that SQL statement and execution plan when you need it?  Why ask for the execution plan?  From the documentation link you will notice that the view definition includes the SQL_PLAN_LINE_ID column, which refers to a specific line in the execution plan for the query.  From this bit of information, we just need to define what is considered an operation (and does it have to be an uninterrupted operation) &amp;#8211; without parallel query we might be able to perform a couple of tests.  The definition of an operation and the 6 second rule might be very important.&lt;/p&gt;
&lt;p&gt;We will use tables T3 and T4 from &lt;a href=&quot;http://hoopercharles.wordpress.com/2010/03/08/impact-of-the-trunc-function-on-an-indexed-date-column/&quot; target=&quot;_blank&quot;&gt;yesterday&amp;#8217;s blog article&lt;/a&gt; since the original poster did not provide a SQL statement to reproduce the problem.  Consider the following query:&lt;/p&gt;
SELECT
  T3.C1,
  T3.C2,
  T4.C3
FROM
  T3,
  T4
WHERE
  TRUNC(T3.C2) BETWEEN TO_DATE(&#039;08-MAR-2009&#039;,&#039;DD-MON-YYYY&#039;)
    AND TO_DATE(&#039;01-JUL-2009&#039;,&#039;DD-MON-YYYY&#039;)
  AND T3.C2=T4.C2;
&lt;p&gt;If we set the STATISTICS_LEVEL parameter to ALL at the session level, run the SQL statement, and then generate the DBMS_XPLAN for the last execution, we may see an execution plan that looks something like this:&lt;/p&gt;
SQL_ID  2d4f5x92axqgn, child number 0
-------------------------------------
SELECT    T3.C1,    T3.C2,    T4.C3  FROM    T3,    T4  WHERE   
TRUNC(T3.C2) BETWEEN TO_DATE(&#039;08-MAR-2009&#039;,&#039;DD-MON-YYYY&#039;)      AND
TO_DATE(&#039;01-JUL-2009&#039;,&#039;DD-MON-YYYY&#039;)    AND T3.C2=T4.C2

Plan hash value: 1396201636

-------------------------------------------------------------------------------------------------------------------------
| Id  | Operation          | Name | Starts | E-Rows | A-Rows |   A-Time   | Buffers | Reads  |  OMem |  1Mem | Used-Mem |
-------------------------------------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT   |      |      1 |        |    874K|00:03:31.20 |    3771K|   3763K|       |       |          |
|*  1 |  HASH JOIN         |      |      1 |    849K|    874K|00:03:31.20 |    3771K|   3763K|    33M|  5591K|   50M (0)|
|*  2 |   TABLE ACCESS FULL| T3   |      1 |    802K|    795K|00:02:32.69 |    2743K|   2743K|       |       |          |
|   3 |   TABLE ACCESS FULL| T4   |      1 |     25M|     25M|00:00:35.93 |    1028K|   1020K|       |       |          |
-------------------------------------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------
   1 - access(&quot;T3&quot;.&quot;C2&quot;=&quot;T4&quot;.&quot;C2&quot;)
   2 - filter((TRUNC(INTERNAL_FUNCTION(&quot;C2&quot;))&amp;#62;=TO_DATE(&#039; 2009-03-08 00:00:00&#039;, &#039;syyyy-mm-dd hh24:mi:ss&#039;) AND
              TRUNC(INTERNAL_FUNCTION(&quot;C2&quot;))&amp;#60;=TO_DATE(&#039; 2009-07-01 00:00:00&#039;, &#039;syyyy-mm-dd hh24:mi:ss&#039;)))
&lt;p&gt;From the above, we are able to see that Oracle is reporting that the full table scan of table T3 required roughly 152.69 seconds and the full table scan of table T4 required roughly 35.93 seconds.  Assume that in another session we executed the following SQL statement roughly every 6 seconds while the above SQL statement was in the process of being executed:&lt;/p&gt;
SELECT
  SQL_ID,
  SQL_PLAN_HASH_VALUE HASH_VALUE,
  SQL_PLAN_LINE_ID LINE_ID,
  OPNAME,
  TARGET,
  TARGET_DESC,
  TIME_REMAINING,
  ELAPSED_SECONDS,
  SID,
  SERIAL#,
  USERNAME
FROM
  V$SESSION_LONGOPS
WHERE
  TIME_REMAINING&amp;#62;0;
&lt;p&gt;The output of the above SQL statement might look something like the following:&lt;/p&gt;
SQL_ID        HASH_VALUE    LINE_ID OPNAME          TARGET          TARGET_DESC  TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL#  USERNAME
------------- ---------- ---------- --------------- --------------- ------------ -------------- --------------- ---------- ----------  --------
2d4f5x92axqgn 1396201636          2 Table Scan      TESTUSER.T3                             104              53        159        909  TESTUSER

2d4f5x92axqgn 1396201636          2 Table Scan      TESTUSER.T3                              92              62        159        909  TESTUSER

2d4f5x92axqgn 1396201636          2 Table Scan      TESTUSER.T3                              82              73        159        909  TESTUSER

2d4f5x92axqgn 1396201636          2 Table Scan      TESTUSER.T3                              74              81        159        909  TESTUSER

2d4f5x92axqgn 1396201636          2 Table Scan      TESTUSER.T3                              59              95        159        909  TESTUSER

2d4f5x92axqgn 1396201636          2 Table Scan      TESTUSER.T3                              52             101        159        909  TESTUSER

2d4f5x92axqgn 1396201636          2 Table Scan      TESTUSER.T3                              41             112        159        909  TESTUSER

2d4f5x92axqgn 1396201636          2 Table Scan      TESTUSER.T3                              33             120        159        909  TESTUSER

2d4f5x92axqgn 1396201636          2 Table Scan      TESTUSER.T3                              23             131        159        909  TESTUSER

2d4f5x92axqgn 1396201636          2 Table Scan      TESTUSER.T3                              14             140        159        909  TESTUSER

2d4f5x92axqgn 1396201636          2 Table Scan      TESTUSER.T3                               5             148        159        909  TESTUSER

no rows selected

2d4f5x92axqgn 1396201636          3 Table Scan      TESTUSER.T4                              57              10        159        909  TESTUSER

2d4f5x92axqgn 1396201636          3 Table Scan      TESTUSER.T4                              42              18        159        909  TESTUSER

2d4f5x92axqgn 1396201636          3 Table Scan      TESTUSER.T4                              27              31        159        909  TESTUSER

2d4f5x92axqgn 1396201636          3 Table Scan      TESTUSER.T4                              18              41        159        909  TESTUSER

2d4f5x92axqgn 1396201636          3 Table Scan      TESTUSER.T4                               6              53        159        909  TESTUSER

2d4f5x92axqgn 1396201636          3 Table Scan      TESTUSER.T4                               6              57        159        909  TESTUSER

2d4f5x92axqgn 1396201636          3 Table Scan      TESTUSER.T4                               6              63        159        909  TESTUSER

2d4f5x92axqgn 1396201636          3 Table Scan      TESTUSER.T4                               6              70        159        909  TESTUSER

2d4f5x92axqgn 1396201636          3 Table Scan      TESTUSER.T4                               6              75        159        909  TESTUSER

2d4f5x92axqgn 1396201636          3 Table Scan      TESTUSER.T4                               6              81        159        909  TESTUSER

2d4f5x92axqgn 1396201636          3 Table Scan      TESTUSER.T4                               6              86        159        909  TESTUSER

no rows selected
&lt;p&gt;From the above output it appears that the full table scan of table T3 required between 148 and 154 seconds.  At the point where the full table scan of T3 completed and the first couple of seconds (probably 6) of the full table scan of T4, the SQL statement executed in the second session returned no rows - after roughly 6 seconds of reading table T4, the query of V$SESSION_LONGOPS started reporting that table T4 was being read.  From the above it appears that the read of table T4 required between 86 and 94 seconds, yet that does not agree with the DBMS_XPLAN output &amp;#8211; it appears that in the V$SESSION_LONGOPS output the hash join operation&amp;#8217;s time is being reported as part of this elapsed time for reading table T4.&lt;/p&gt;
&lt;p&gt;So, we have found a third possible reason for the rows in V$SESSION_LONGOPS appearing as 0 for the OP&amp;#8217;s SQL statement &amp;#8211; the line in the plan had not yet consumed 6 seconds of time, or the operation had already completed.&lt;/p&gt;
&lt;p&gt;Let&amp;#8217;s look at one of the other SQL statements from yesterday&amp;#8217;s blog article:&lt;/p&gt;
SELECT
  T3.C1,
  T3.C2,
  T4.C3
FROM
  T3,
  T4
WHERE
  T3.C2 BETWEEN TO_DATE(&#039;08-MAR-2009&#039;,&#039;DD-MON-YYYY&#039;)
    AND TO_DATE(&#039;01-JUL-2009&#039;,&#039;DD-MON-YYYY&#039;) + (1-1/24/60/60)
  AND T3.C2=T4.C2;
&lt;p&gt;This statement is equivalent to the previous SQL statement, except that it is able to use the index that exists on table T3.  The execution plan follows:&lt;/p&gt;
SQL_ID  539d93k50ruz3, child number 0
-------------------------------------
SELECT    T3.C1,    T3.C2,    T4.C3  FROM    T3,    T4  WHERE    T3.C2
BETWEEN TO_DATE(&#039;08-MAR-2009&#039;,&#039;DD-MON-YYYY&#039;)      AND
TO_DATE(&#039;01-JUL-2009&#039;,&#039;DD-MON-YYYY&#039;) + (1-1/24/60/60)    AND T3.C2=T4.C2

Plan hash value: 1243183227

--------------------------------------------------------------------------------------------------------------------------------
| Id  | Operation                     | Name      | Starts | E-Rows | A-Rows |   A-Time   | Buffers |  OMem |  1Mem | Used-Mem |
--------------------------------------------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT              |           |      1 |        |    874K|00:00:05.19 |   85051 |       |       |          |
|   1 |  MERGE JOIN                   |           |      1 |    795K|    874K|00:00:05.19 |   85051 |       |       |          |
|   2 |   TABLE ACCESS BY INDEX ROWID | T4        |      1 |    795K|    795K|00:00:01.69 |   51097 |       |       |          |
|*  3 |    INDEX RANGE SCAN           | IND_T4_C2 |      1 |    795K|    795K|00:00:00.42 |   10841 |       |       |          |
|*  4 |   SORT JOIN                   |           |    795K|    795K|    874K|00:00:02.11 |   33954 |    30M|  1977K|   26M (0)|
|   5 |    TABLE ACCESS BY INDEX ROWID| T3        |      1 |    795K|    795K|00:00:00.58 |   33954 |       |       |          |
|*  6 |     INDEX RANGE SCAN          | IND_T3_C2 |      1 |    795K|    795K|00:00:00.18 |    2114 |       |       |          |
--------------------------------------------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------
   3 - access(&quot;T4&quot;.&quot;C2&quot;&amp;#62;=TO_DATE(&#039; 2009-03-08 00:00:00&#039;, &#039;syyyy-mm-dd hh24:mi:ss&#039;) AND &quot;T4&quot;.&quot;C2&quot;&amp;#60;=TO_DATE(&#039; 2009-07-01
              23:59:59&#039;, &#039;syyyy-mm-dd hh24:mi:ss&#039;))
   4 - access(&quot;T3&quot;.&quot;C2&quot;=&quot;T4&quot;.&quot;C2&quot;)
       filter(&quot;T3&quot;.&quot;C2&quot;=&quot;T4&quot;.&quot;C2&quot;)
   6 - access(&quot;T3&quot;.&quot;C2&quot;&amp;#62;=TO_DATE(&#039; 2009-03-08 00:00:00&#039;, &#039;syyyy-mm-dd hh24:mi:ss&#039;) AND &quot;T3&quot;.&quot;C2&quot;&amp;#60;=TO_DATE(&#039; 2009-07-01
              23:59:59&#039;, &#039;syyyy-mm-dd hh24:mi:ss&#039;))
&lt;p&gt;The above SQL statement completed too quickly to report any time in the V$SESSION_LONGOPS view, so let&amp;#8217;s set the &lt;strong&gt;&amp;#8216;08-MAR-2009&amp;#8242;&lt;/strong&gt; date to&lt;strong&gt; &amp;#8216;08-MAR-2007&amp;#8242;&lt;/strong&gt; and re-run the SQL statement.  For quite a bit of time the query of V$SESSION_LONGOPS only returned the following:&lt;/p&gt;
no rows selected
&lt;p&gt;But the SQL statement was executing, why did it not appear in V$SESSION_LONGOPS &amp;#8211; where is that link for reporting a bug on Metalink?  &lt;img src=&quot;http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:-)&quot; class=&quot;wp-smiley&quot; /&gt;   Or maybe, just maybe, Oracle is not performing any &lt;em&gt;single&lt;/em&gt; operation in the execution plan continuously for more than 6 seconds (reading the index at ID 3 followed by the corresponding rows at ID 2, and then back to the index at ID 3 again).&lt;/p&gt;
&lt;p&gt;Eventually, the following appeared after what must have been a minute or two:&lt;/p&gt;
SQL_ID        HASH_VALUE    LINE_ID OPNAME          TARGET          TARGET_DESC  TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- --------------- --------------- ------------ -------------- --------------- ---------- ---------- --------
f3scvt222bu0t 1243183227          4 Sort Output                                            1194              12        159        909 TESTUSER

f3scvt222bu0t 1243183227          4 Sort Output                                            2115              22        159        909 TESTUSER

f3scvt222bu0t 1243183227          4 Sort Output                                            2115              22        159        909 TESTUSER
...
(in the above the last row continued to repeat with ELAPSED_SECONDS displayed as 22 for a minute or two)
&lt;p&gt;Ready, aim,&amp;#8230; hey &amp;#8211; what is the TARGET.  The LINE_ID column (the SQL_PLAN_LINE_ID column in V$SESSION_LONGOPS) reported that Oracle is executing ID 4 of the execution plan.  I can&amp;#8217;t explain why the last line remained in the V$SESSION_LONGOPS output for a minute or two (maybe someone else knows why).&lt;/p&gt;
&lt;p&gt;So, we have found a fourth possible reason for the rows in V$SESSION_LONGOPS appearing as 0 for the OP&amp;#8217;s SQL statement &amp;#8211; it could be that Oracle was alternating between an index range scan and the retrieval of the matching rows from the corresponding table.&lt;/p&gt;
&lt;p&gt;Let&amp;#8217;s try executing the first query with a parallel hint to see what happens to the V$SESSION_LONGOPS output:&lt;/p&gt;
SELECT /*+ PARALLEL (T3, 4) PARALLEL (T4, 4) */
  T3.C1,
  T3.C2,
  T4.C3
FROM
  T3,
  T4
WHERE
  TRUNC(T3.C2) BETWEEN TO_DATE(&#039;08-MAR-2009&#039;,&#039;DD-MON-YYYY&#039;)
    AND TO_DATE(&#039;01-JUL-2009&#039;,&#039;DD-MON-YYYY&#039;)
  AND T3.C2=T4.C2;
&lt;p&gt;The DBMS_XPLAN output for the query follows:&lt;/p&gt;
SQL_ID  dywt9v0xuvgyv, child number 0
-------------------------------------
SELECT /*+ PARALLEL (T3, 4) PARALLEL (T4, 4) */    T3.C1,    T3.C2,   
T4.C3  FROM    T3,    T4  WHERE    TRUNC(T3.C2) BETWEEN
TO_DATE(&#039;08-MAR-2009&#039;,&#039;DD-MON-YYYY&#039;)      AND
TO_DATE(&#039;01-JUL-2009&#039;,&#039;DD-MON-YYYY&#039;)    AND T3.C2=T4.C2

Plan hash value: 1800244878

-------------------------------------------------------------------------------------------------------------------------
| Id  | Operation               | Name     | Starts | E-Rows | A-Rows |   A-Time   | Buffers |  OMem |  1Mem | Used-Mem |
-------------------------------------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT        |          |      1 |        |    874K|00:03:49.60 |      14 |       |       |          |
|   1 |  PX COORDINATOR         |          |      1 |        |    874K|00:03:49.60 |      14 |       |       |          |
|   2 |   PX SEND QC (RANDOM)   | :TQ10001 |      0 |    849K|      0 |00:00:00.01 |       0 |       |       |          |
|*  3 |    HASH JOIN            |          |      0 |    849K|      0 |00:00:00.01 |       0 |   126M|    10M|   49M (0)|
|   4 |     PX RECEIVE          |          |      0 |    802K|      0 |00:00:00.01 |       0 |       |       |          |
|   5 |      PX SEND BROADCAST  | :TQ10000 |      0 |    802K|      0 |00:00:00.01 |       0 |       |       |          |
|   6 |       PX BLOCK ITERATOR |          |      0 |    802K|      0 |00:00:00.01 |       0 |       |       |          |
|*  7 |        TABLE ACCESS FULL| T3       |      0 |    802K|      0 |00:00:00.01 |       0 |       |       |          |
|   8 |     PX BLOCK ITERATOR   |          |      0 |     25M|      0 |00:00:00.01 |       0 |       |       |          |
|*  9 |      TABLE ACCESS FULL  | T4       |      0 |     25M|      0 |00:00:00.01 |       0 |       |       |          |
-------------------------------------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------
   3 - access(&quot;T3&quot;.&quot;C2&quot;=&quot;T4&quot;.&quot;C2&quot;)
   7 - access(:Z&amp;#62;=:Z AND :Z&amp;#60;=:Z)
       filter((TRUNC(INTERNAL_FUNCTION(&quot;C2&quot;))&amp;#62;=TO_DATE(&#039; 2009-03-08 00:00:00&#039;, &#039;syyyy-mm-dd hh24:mi:ss&#039;) AND
              TRUNC(INTERNAL_FUNCTION(&quot;C2&quot;))&amp;#60;=TO_DATE(&#039; 2009-07-01 00:00:00&#039;, &#039;syyyy-mm-dd hh24:mi:ss&#039;)))
   9 - access(:Z&amp;#62;=:Z AND :Z&amp;#60;=:Z)
       filter(SYS_OP_BLOOM_FILTER(:BF0000,&quot;T4&quot;.&quot;C2&quot;))
&lt;p&gt;A bloom filter, just in time for Spring (it must be true, it is in the Predicate Information section of the actual execution plan).&lt;/p&gt;
&lt;p&gt;After roughly a 6 second delay, V$SESSION_LONGOPS was queried roughly every 6 seconds.  The output of the V$SESSION_LONGOPS query follows:&lt;/p&gt;
SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              8               7        553        243 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              4               7         80        544 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                            114               7          7        251 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                             14               7        159        982 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              2              16        159        982 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              4               9        553        243 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              1              13         80        544 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              7               9          7        251 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                             13               9         80        544 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              2              12        553        243 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              7              10          7        251 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              6               7        159        982 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              7               7        553        243 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              4              10         80        544 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              2              13        159        982 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              4               9        553        243 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              6              10          7        251 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                             10               8         80        544 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              2              12        553        243 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              1              16         80        544 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              3              10          7        251 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              6              10        159        982 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              6               8        553        243 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              8               8         80        544 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              3              12        159        982 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              4              10        553        243 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              5              10         80        544 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              5               8          7        251 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              7               9        159        982 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              7               9        159        982 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              7               9        159        982 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              7               9        159        982 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              7               9        159        982 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              7               9        159        982 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              7               9        159        982 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                              2              57         80        544 TESTUSER
dywt9v0xuvgyv 1800244878          7 Rowid Range Scan TESTUSER.T3                             20              66        159        982 TESTUSER

SQL&amp;#62; /

no rows selected

SQL&amp;#62; /

no rows selected

SQL&amp;#62; /

no rows selected

SQL&amp;#62; /

no rows selected

SQL&amp;#62; /

no rows selected

SQL&amp;#62; /

no rows selected

SQL&amp;#62; /

no rows selected

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          9 Rowid Range Scan TESTUSER.T4                              9               8         81       1204 TESTUSER
dywt9v0xuvgyv 1800244878          9 Rowid Range Scan TESTUSER.T4                              4               7        395        631 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          9 Rowid Range Scan TESTUSER.T4                             69              13        160         32 TESTUSER
dywt9v0xuvgyv 1800244878          9 Rowid Range Scan TESTUSER.T4                             12              16         81       1204 TESTUSER
dywt9v0xuvgyv 1800244878          9 Rowid Range Scan TESTUSER.T4                              5              15        395        631 TESTUSER
dywt9v0xuvgyv 1800244878          9 Rowid Range Scan TESTUSER.T4                             71              13        238         31 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          9 Rowid Range Scan TESTUSER.T4                             11              25         81       1204 TESTUSER
dywt9v0xuvgyv 1800244878          9 Rowid Range Scan TESTUSER.T4                              4              24        395        631 TESTUSER
dywt9v0xuvgyv 1800244878          9 Rowid Range Scan TESTUSER.T4                             58              22        238         31 TESTUSER

SQL&amp;#62; /

SQL_ID        HASH_VALUE    LINE_ID OPNAME           TARGET          TARGET_DESC TIME_REMAINING ELAPSED_SECONDS        SID    SERIAL# USERNAME
------------- ---------- ---------- ---------------- --------------- ----------- -------------- --------------- ---------- ---------- --------
dywt9v0xuvgyv 1800244878          9 Rowid Range Scan TESTUSER.T4                              7              33         81       1204 TESTUSER

SQL&amp;#62; /

no rows selected
&lt;p&gt;As you can see from the above, the parallel query processes (each with a different SID) appear, and disappear from the V$SESSION_LONGOPS output as the query executes.  The output shows a roughly 40 to 50 second time period during the execution of the query in the first session where nothing appeared in the V$SESSION_LONGOPS output.&lt;/p&gt;
&lt;p&gt;So, we have found a fifth possible reason for the rows in V$SESSION_LONGOPS appearing as 0 for the OP&amp;#8217;s SQL statement &amp;#8211; the OP may have just queried V$SESSION_LONGOPS at the wrong time.&lt;/p&gt;
&lt;p&gt;Any other possible reasons why the OP would see 0 for the TIME_REMAINING column when querying V$SESSION_LONGOPS during the execution of a SQL statement that is expected to require 20 minutes to complete?&lt;/p&gt;
&lt;br /&gt;  &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gocomments/hoopercharles.wordpress.com/1624/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/hoopercharles.wordpress.com/1624/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godelicious/hoopercharles.wordpress.com/1624/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/hoopercharles.wordpress.com/1624/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gostumble/hoopercharles.wordpress.com/1624/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/hoopercharles.wordpress.com/1624/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godigg/hoopercharles.wordpress.com/1624/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/hoopercharles.wordpress.com/1624/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/goreddit/hoopercharles.wordpress.com/1624/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/hoopercharles.wordpress.com/1624/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://stats.wordpress.com/b.gif?host=hoopercharles.wordpress.com&amp;amp;blog=10738606&amp;amp;post=1624&amp;amp;subd=hoopercharles&amp;amp;ref=&amp;amp;feed=1&quot; /&gt;</description>
 <pubDate>Tue, 09 Mar 2010 07:00:59 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8176 at http://www.ora600.be</guid>
</item>
<item>
 <title>Remove &quot;old&quot; parameters and events from your init.ora</title>
 <link>http://www.ora600.be/news/remove-old-parameters-and-events-your-initora</link>
 <description>&lt;p&gt;&lt;strong&gt;It&#039;s cleanup time!!&lt;br /&gt;
&lt;/strong&gt;&lt;br /&gt;
When upgrading to a new database release, especially &lt;strong&gt;Oracle Database 11g Release 1 or Release 2,&lt;/strong&gt; you should&lt;strong&gt; always remove old init.ora parameters&lt;/strong&gt; from the init.ora/spfile when you upgrade. For instance we&#039;ve had a lot of useful (and necessary) tuning parameters in Oracle 9i environments such as &lt;em&gt;_always_anti_join=off&lt;/em&gt;, &lt;em&gt;star_transformation=false&lt;/em&gt; or several &lt;em&gt;events&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Make sure you remove all of them&lt;/strong&gt; when you upgrade as keeping them will definitely slow down the database performance in the new release. You don&#039;t believe this? Then see this result of a customer case having a packaged OLTP workload for the upgrade testing. It shows the comparision of this workload with all &quot;old&quot; 9i parameters to a small and cleaned up init.ora:&lt;/p&gt;

&lt;p&gt;&lt;img alt=&quot;2010_03_09_Mel000.jpg&quot; src=&quot;http://blogs.oracle.com/UPGRADE/IMAGES/2010_03_09_Mel000.jpg&quot; width=&quot;485&quot; height=&quot;251&quot; class=&quot;mt-image-center&quot; /&gt;&lt;/p&gt;

&lt;p&gt;In this case we&#039;ve removed just all &lt;em&gt;&quot;old&quot; &lt;/em&gt;9i parameters from the init.ora and started with a very basic init.ora in Oracle Database 11&lt;em&gt;g &lt;/em&gt;with only the required parameters such as &lt;em&gt;diagnostic_dest &lt;/em&gt;and the indentical memory parameters taken from the 9i environment. &lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;
And this has speed up the processing in Oracle Database 11g by 14,5%!!!&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You could always do a &lt;em&gt;&lt;strong&gt;&#039;create pfile=&#039;/tmp/init.ora&#039; from spfile;&#039;&lt;/strong&gt;&lt;/em&gt; and modify it. Use the modified init.ora when starting up your database in upgrade mode by typing &lt;em&gt;&lt;strong&gt;&#039;startup upgrade pfile=&#039;/tmp/init.ora&#039;&lt;/strong&gt;&lt;/em&gt; and then don&#039;t forget to do a &lt;em&gt;&lt;strong&gt;&#039;create spfile from pfile;&#039;&lt;/strong&gt;&lt;/em&gt; once the database is started up.&lt;/p&gt;

&lt;p&gt;By the way, the &lt;strong&gt;pre-upgrade check script &lt;em&gt;utlu112.sql&lt;/em&gt;&lt;/strong&gt; downloadable from within&lt;strong&gt; &lt;a href=&quot;https://support.oracle.com:443/CSP/ui/flash.html#tab=KBHome(page=KBHome&amp;amp;id=()),(page=KBNavigator&amp;amp;id=(bmDocType=HOWTO&amp;amp;bmDocDsrc=DOCUMENT&amp;amp;bmDocTitle=How%20to%20Download%20and%20Run%20Oracle&amp;#039;s%20Database%20Pre-Upgrade%20Utility&amp;amp;from=BOOKMARK&amp;amp;bmDocID=884522.1&amp;amp;viewingMode=1143))&quot;&gt;Note:884522.1&lt;/a&gt;&lt;/strong&gt; will give you all the parameters to change in the new release. And it can be run anytime before the upgrade to check your current database release.&lt;/p&gt;

&lt;p&gt;Give this a try and r&lt;strong&gt;emove or comment out all the &quot;old&quot; stuff!&lt;/strong&gt;!&lt;/p&gt;</description>
 <pubDate>Tue, 09 Mar 2010 00:31:48 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8173 at http://www.ora600.be</guid>
</item>
<item>
 <title>Hotsos 2010 - Day 2 - The conference begins</title>
 <link>http://www.ora600.be/news/hotsos-2010-day-2-conference-begins</link>
 <description>A 3:30 start, which gave me lots of time to work on my demos and by breakfast time at 7:30, I felt in a reasonable place (but not quite done yet) and headed down to eat ... wait for it ... some fruit! Then again, I&#039;d eaten so little the previous day that I had to eat something.&lt;br /&gt;&lt;br /&gt;First up was Gary Goodman opening the event and introducing &lt;a href=&quot;http://tkyte.blogspot.com/&quot;&gt;Tom Kyte&#039;s&lt;/a&gt; keynote with :-&lt;br /&gt;&lt;br /&gt;a) A video of Tom and Hotsos regular Patty, Disco Dancing to mark tomorrow night&#039;s Disco theme. Personally, I thought it was hilarious and I hope it gets posted online somewhere. I&#039;m not sure everyone found it as funny, but it did the trick for me. &lt;br /&gt;&lt;br /&gt;b) A gift of a custom set of poker chips because I believe Tom&#039;s a player (of poker, that is). Tom&#039;s keynote was about (looks for title in notes and can&#039;t find it) the mistakes we make *because* of our experience and our assumptions. It was thoroughly entertaining and kicked off with a quiz for four volunteer participants who had to answer 12 apparently simple questions very quickly. They were trick questions, of course &lt;img src=&quot;http://oracledoug.com/serendipity/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; class=&quot;emoticon&quot; /&gt; Rather than me taking voluminous notes, I&#039;m hoping that Tom might post the questions on his blog (hint, hint) even though they were meant to be answered quickly based on verbal questioning.&lt;br /&gt;&lt;br /&gt;Oh, and I couldn&#039;t believe it when my phone started ringing, for someone who&#039;s normally exceptionally careful about that stuff. I had it on silent last night, missed a text from Alex G and so had taken it off silent. Clown! (In retrospect, this should have been a warning sign.)&lt;br /&gt;&lt;br /&gt;There were tons of great examples of where clever people have gone spectacularly wrong through over-confidence. We&#039;re often wrong when we answer quickly based on our prior experience because things &lt;em&gt;change&lt;/em&gt;. I suspect I sometimes frustrate colleagues by not giving the snappy answers they expect, but I know that Oracle stuff is often not as obvious as it seems at first sight. There was even a sighting of Martin Widlake&#039;s &amp;quot;&lt;a href=&quot;http://mwidlake.wordpress.com/2010/02/11/making-things-better-makes-things-worse/&quot;&gt;Making Things Better Makes Things Worse&lt;/a&gt;&amp;quot;&amp;#160; but no name-check, Martin, so you&#039;re only *almost* famous &lt;img src=&quot;http://oracledoug.com/serendipity/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;&lt;br /&gt;I particularly enjoyed the video I hadn&#039;t seen of Richard Feynmann talking about the uncomfortable state of confusion and feeling stupid. (With hindsight, why did I not see the warning signs ...)&lt;br /&gt;&lt;br /&gt;Then I skipped two sessions I was looking forward to but, as I&#039;ve said before, I need to take care of my own presenting business before I can enjoy and learn from other people&#039;s presentations. However, I bumped into a friend after Richard Foote&#039;s session and he thought it was amazing. My friends first trip to Hotsos is going well.&lt;br /&gt;&lt;br /&gt;Sitting in my room, I was really happy with how the demos were looking, raring to go and went to iron my shirt. Damn, the iron wasn&#039;t working and I really didn&#039;t have time to wait for another to show up. No problem, though, because I always carry a special shirt that *really* doesn&#039;t need ironing - just hang it up in the bathroom with the shower on. (Another warning sign, though?)&lt;br /&gt;&lt;br /&gt;I&#039;m very superstitious about using any new kit for the first time, so I was still nervous about a couple of things with the demos&lt;br /&gt;&lt;br /&gt;1) Performance, because I know I&#039;d run them all weekend and have a new powerful laptop (more on that another time), but the demos are designed to hammer the machine. So I thought I&#039;d disable everything I didn&#039;t need running.&lt;br /&gt;&lt;br /&gt;2) Driving the projector because I&#039;d never driven one with the new laptop. I arranged to check that my laptop would drive the projector ok. It seemed to, but one of the demos was behaving strangely. No time to investigate because Dan Norris needed the podium, so I decanted to Alex&#039;s Battle Against Any Guess presentation because we&#039;d been discussing it, I know he was concerned about how it would go and wanted to show a little moral support.&lt;br /&gt;&lt;br /&gt;In the event, he needn&#039;t have worried. Personally, I find his Russian accent all but impenetrable, particularly after we&#039;ve had a few beers and are both shouting at each other, but I&#039;m sure the feeling&#039;s mutual! But the fact that he had the room rolling about with laughter at regular intervals meant it had gone very well! I hope he still does plenty of technical presentations with lots of demos, but he proved he can do something a little more conceptual and message-driven. Better still, I&#039;d been frantically trying to get my demos working at the back of the hall by re-enabling services I&#039;d disabled and they started to work &lt;img src=&quot;http://oracledoug.com/serendipity/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; class=&quot;emoticon&quot; /&gt; I turned round to Cary Millsap who was hiding their too and dramatically mimed wiping the sweat away from my brow. Time to head back into the other room and watch the tail-end of Dan Norris&#039; Database Machine presentation. I didn&#039;t see nearly enough and was completely pre-occupied by what was to come, so will need to catch up on the slides later.&lt;br /&gt;&lt;br /&gt;Some interesting Q &amp;amp; A at the end which were slightly less interesting for me because my demos started playing up again! So, a room full of people, I&#039;m rebooting my laptop, nothing is working and then, bang, it&#039;s time!&lt;br /&gt;&lt;br /&gt;Whilst my presentation was originally part of this post, my review is so long-winded and personal, I&#039;ve moved it to another post that people can choose to skip over! That way it doesn&#039;t detract from the good presentations I saw yesterday, such as &lt;a href=&quot;http://kevinclosson.wordpress.com/&quot;&gt;Kevin Closson&#039;s&lt;/a&gt; &amp;quot;Ten Years After Y2K And We Still &amp;quot;Party Like It&#039;s 1999&amp;quot;&amp;quot;. &lt;br /&gt;&lt;br /&gt;Excellent, as always, and packed full of information, it also sort of tied up the way the day opened, albeit in a very different tone and style that things &lt;em&gt;change&lt;/em&gt;. Kevin has the perspective of having been in the industry a long time, so he&#039;s seen the past, but also being able to see where we are now and where we&#039;re going, so he concentrated on a few of his pet subjects that I&#039;m pretty sure you&#039;ll see cropping up on his blog in the near future but, to give you a taster, he talked about the merits of SMT on Nehalem EP chips for different workloads, which is something we&#039;d been talking about at the opening reception. I&#039;m pretty sure I can&#039;t disable it on my laptop to give it a try, but I might have a word with him about it anyway. He talked about Flash, Direct-attached storage, NFS, virtualisation and all that good stuff as always but because I missed the first 10 min for a much-needed break and couldn&#039;t read the slides because I forgot my glasses, I&#039;m going to have to try to hit on him for a copy of his slides later! Oh, and I was wondering why the presentation was well attended but not packed. I&#039;d forgotten Tom Kyte was speaking next door. I was happy with my choice.&lt;br /&gt;&lt;br /&gt;I did have one more presentation scheduled, to see the first of Kerry Osborne&#039;s but I was pretty low at this stage and sleep deprivation was kicking in, so I headed back to my room to catch up with some blogging and tweeting (thanks for the support) and then it was time for dinner with the Oak Table crew. Very nice it was, too, hats off to Marco and Carol for choosing that place, the company of all and for Carol&#039;s consistently top-notch organisation and geek-ferrying. Nice big lump of beautiful steak, some chips and a beer. That&#039;s more like it! A few more drinks back at the bar but I made my excuses and left at 11:30 despite some vain attempts at hypnotising me into staying! &lt;img src=&quot;http://oracledoug.com/serendipity/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Oh, but the weather was still rubbish all day &lt;img src=&quot;http://oracledoug.com/serendipity/templates/default/img/emoticons/sad.png&quot; alt=&quot;:-(&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Regardless of everything that happened yesterday, I now have 3 days of no responsibility and can just learn, socialise, eat and perhaps sleep a bit more. I woke up at 3:30 again this morning, but turned over and managed another 2 hours. Bliss! &lt;br /&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/DougsOracleBlog/~4/lIrsT4M4esQ&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
 <pubDate>Tue, 09 Mar 2010 00:03:43 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8180 at http://www.ora600.be</guid>
</item>
<item>
 <title>Hotsos 2010 - Day 1.79 - Friends show up</title>
 <link>http://www.ora600.be/news/hotsos-2010-day-179-friends-show</link>
 <description>Hard at work preparing for my presentation yesterday until it got nearer to 5pm and people started coming in on their flights. First up was Kevin Closson, who looked a somewhat sad sight (by his usual standards), clutching a bag from a PC store containing what he hoped would be the crucial bit of software that would help him solve his over-written MBR. I waited for him in the bar and discovered Mark Bobac had Ubuntu Live on a USB stick. I suppose I &lt;em&gt;could&lt;/em&gt; have gone and told Kevin, but I knew he&#039;d be down imminently &lt;img src=&quot;http://oracledoug.com/serendipity/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;&lt;br /&gt;It was also a brilliant experience to bump into Paul Matuszyk again, who I worked with briefly 4 years ago at Sky. This is his first conference, largely inspired by a set of Symposium 2006 notes I gave him and my encouragement so it was a) great to see him again and b) pleasing when I saw him coming out of Richard Foote&#039;s presentation, blown away by how good it was. I think he&#039;s already decided it was a good decision &lt;img src=&quot;http://oracledoug.com/serendipity/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Then it was the usual suspects, the usual drinking and some chat with KC, who always has smart stuff to say. In amongst that, I liked him pointing out that my new iCore 7 laptop is probably what they used to euphemistically call a &#039;Portable&#039; computer. He&#039;s not wrong there &lt;img src=&quot;http://oracledoug.com/serendipity/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Not too late to bed and really looking forward to the first day of the conference and my presentation.&lt;br /&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/DougsOracleBlog/~4/f0JrJVm_Tp4&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
 <pubDate>Tue, 09 Mar 2010 00:03:23 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8172 at http://www.ora600.be</guid>
</item>
<item>
 <title>Weird exception handling</title>
 <link>http://www.ora600.be/news/weird-exception-handling</link>
 <description>PL/SQL got me fooled today. My assignment was to build a new procedure that gets invoked together with an existing procedure. After I had build and unit tested my new procedure, the tester wanted to conduct a system integration test. He had trouble coming up with a situation where the old and new procedure were called. So I helped him by having a look at some of the surrounding code and my</description>
 <pubDate>Mon, 08 Mar 2010 22:42:00 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8171 at http://www.ora600.be</guid>
</item>
<item>
 <title>Inserts Experiencing an Increasing CPU Consumption</title>
 <link>http://www.ora600.be/news/inserts-experiencing-increasing-cpu-consumption</link>
 <description>Last week I had to analyze a strange performance problem. Since the cause/solution was somehow surprising, at least for me, I thought to share it with you.
Let me start by quickly describing the setup and what was done to reproduce the problem:

Database version: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 (64-bit)
Operating system: Solaris 10 (SPARC)
To [...]</description>
 <pubDate>Mon, 08 Mar 2010 22:23:42 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8169 at http://www.ora600.be</guid>
</item>
<item>
 <title>Oracle Database 11g helps BMW ORACLE Racing win America&#039;s Cup</title>
 <link>http://www.ora600.be/news/oracle-database-11g-helps-bmw-oracle-racing-win-americas-cup</link>
 <description>&lt;p&gt;I recently sat down with Ian &quot;Fresh&quot; Burns, design coordinator for the BMW ORACLE Racing trimaran, and talked about how technology helped win back the America&#039;s Cup. An amazing sight to see on the water, the BMW ORACLE Racing trimaran is able to travel at 4 times the wind speed, is as large as a baseball diamond, and has a wing sail that&#039;s 23 stories tall. Some of you will be interested to learn from Fresh how Oracle Database 11g played a major part in helping BMW ORACLE Racing win the oldest active trophy in International sport. Plus, Fresh shares a couple of other interesting bits about the race.&lt;/p&gt;

&lt;p&gt;To learn more, tune into our &lt;a href=&quot;http://feedproxy.google.com/~r/OracleDatabaseInsider/~5/nussC-gxZFQ/8576609_Ian_Burns_030810.mp3&quot;&gt;podcast&lt;/a&gt; conversation with Fresh.&lt;/p&gt;

&lt;p&gt;&lt;img alt=&quot;bwmoracleracing.jpg&quot; src=&quot;http://blogs.oracle.com/databaseinsider/bwmoracleracing.jpg&quot; width=&quot;745&quot; height=&quot;419&quot; class=&quot;mt-image-none&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;br /&gt;
var gaJsHost = ((&quot;https:&quot; == document.location.protocol) ? &quot;https://ssl.&quot; : &quot;http://www.&quot;);&lt;br /&gt;
document.write(unescape(&quot;%3Cscript src=&#039;&quot; + gaJsHost + &quot;google-analytics.com/ga.js&#039; type=&#039;text/javascript&#039;%3E%3C/script%3E&quot;));&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
try {&lt;br /&gt;
var pageTracker = _gat._getTracker(&quot;UA-13185312-1&quot;);&lt;br /&gt;
pageTracker._trackPageview();&lt;br /&gt;
} catch(err) {}&lt;br /&gt;
 &lt;/p&gt;</description>
 <pubDate>Mon, 08 Mar 2010 21:31:16 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8167 at http://www.ora600.be</guid>
</item>
<item>
 <title>International Women’s Day</title>
 <link>http://www.ora600.be/news/international-women%E2%80%99s-day</link>
 <description>&lt;p&gt;If you do not know what International Women&amp;#8217;s Day is:  &lt;a href=&quot;http://www.internationalwomensday.com/&quot;&gt;http://www.internationalwomensday.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Start planning your blog posts for Ada Lovelace day now (March 24th, &lt;a href=&quot;http://findingada.com/&quot;&gt;http://findingada.com/&lt;/a&gt; Ada Lovelace Day is an international day of blogging (videologging, podcasting, comic drawing etc.!) to draw attention to the achievements of women in technology and science.)&lt;/p&gt;
&lt;p&gt;To that end, I would like to point out all the women currently in science and tech fields that I admire and think are doing great things.  I think it would be great if everyone, male or female, made a list like this:&lt;br /&gt;
&lt;br /&gt;
The women that have taught me science/tech along the way:&lt;/p&gt;
&lt;p&gt;High School:&lt;br /&gt;
Mary Lou Ciavarra (Physics)&lt;br /&gt;
Maria Petretti (Pre-Algebra, and Academic Decathlon)&lt;br /&gt;
Reneé Fishman (Biology)&lt;br /&gt;
Lisa Acquaire (Economics during Academic Decathlon)&lt;/p&gt;
&lt;p&gt;College:&lt;br /&gt;
&lt;a href=&quot;http://www.bio.brandeis.edu/faculty/white.html&quot;&gt;Professor Kalpana White (Biology), and in whose fruit fly lab I worked for 2 semesters.&lt;br /&gt;
Professor Eve Marder (Introductory Neuroscience)&lt;/p&gt;
&lt;p&gt;Though &lt;A href=&quot;http://www.brandeis.edu&quot;&gt;Brandeis&lt;/a&gt; does have female faculty in the Computer Science department, I did not manage to have any classes with female Computer Science faculty members.&lt;/p&gt;
&lt;p&gt;My current female DBA co-workers at Pythian:  &lt;a href=&quot;http://ca.linkedin.com/pub/isabel-pinarci/7/2a6/2a2&quot;&gt;Isabel Pinarci&lt;/a&gt; (Oracle), &lt;a href=&quot;http://www.pythian.com/news/author/mgutzait/&quot;&gt;Michelle Gutzait&lt;/a&gt; (SQL Server), &lt;a href=&quot;http://www.pythian.com/news/author/chow/&quot;&gt;Catherine Chow&lt;/a&gt; (Oracle) and &lt;a href=&quot;http://ca.linkedin.com/in/jasminewen&quot;&gt;Jasmine Wen&lt;/a&gt; (Oracle).&lt;/p&gt;
&lt;p&gt;And to folks in the greater MySQL/tech community and tech co-workers past and present, especially those I have been inspired and helped by: &lt;a href=&quot;http://www.linkedin.com/pub/tracy-gangwer/1/72a/14a&quot;&gt;Tracy Gangwer&lt;/a&gt;, &lt;A /&gt;Leslie Hawthorn&lt;/A&gt;, &lt;a href=&quot;http://chesnok.com/&quot;&gt;Selena Deckelmann&lt;/a&gt; (Postgres), &lt;a href=&quot;http://www.linkedin.com/in/amyrich&quot;&gt;Amy Rich&lt;/a&gt;, &lt;a href=&quot;http://www.linkedin.com/in/annecross&quot;&gt;Anne Cross&lt;/a&gt;, and more (If I have forgotten you, I apologize!).&lt;/p&gt;</description>
 <pubDate>Mon, 08 Mar 2010 20:52:16 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8170 at http://www.ora600.be</guid>
</item>
<item>
 <title>Pete Finnigan Webinar on Oracle Security</title>
 <link>http://www.ora600.be/news/pete-finnigan-webinar-oracle-security</link>
 <description>&lt;p&gt; It has been quite a while since my last blog post; i keep promising to post more often and even worse I have a long list of things to blog about but I don&#039;t seem to get enough time recently....&lt;a href=&quot;http://www.petefinnigan.com/weblog/archives/00001312.htm&quot;&gt;[Read More]&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Posted by Pete On 08/03/10 At 04:04 PM&lt;/p&gt;</description>
 <pubDate>Mon, 08 Mar 2010 20:30:39 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8164 at http://www.ora600.be</guid>
</item>
<item>
 <title>February Top 10</title>
 <link>http://www.ora600.be/news/february-top-10</link>
 <description>As the name implies, it&#039;s the Top 10 for this past month.  Probably the biggest reason I am doing this is the EBS Install series has become a runaway success.  I&#039;ve never had something become so popular so quickly...which of course tells me I&#039;m no good and &lt;a href=&quot;http://www.oraclenerd.com/labels/jpiwowar.html&quot;&gt;John Piwowar&lt;/a&gt; is the best ever.  :)  &lt;br /&gt;&lt;br /&gt;John deserves quite a bit of recognition so the more I can provide, the better.&lt;br /&gt;&lt;br /&gt;&lt;table width=&quot;80%&quot;&gt;&lt;tr&gt;&lt;td&gt;Title&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;Pageviews&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;Unique Pageviews&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://www.oraclenerd.com//2009/12/ebs-install-guide-part-1.html&quot;&gt;EBS Install Guide - Part I&lt;/a&gt;&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;541&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;394&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://www.oraclenerd.com//2009/01/learning-oracle-business-intelligence.html&quot;&gt;Learn Oracle Business Intelligency (OBIEE)&lt;/a&gt;&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;444&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;337&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://www.oraclenerd.com//2009/12/ebs-install-guide-part-2.html&quot;&gt;EBS Install Guide - Part 2&lt;/a&gt;&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;347&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;262&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://www.oraclenerd.com//2008/04/dbmscrypto-example.html&quot;&gt;DBMS_CRYPTO: Example&lt;/a&gt;&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;339&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;295&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://www.oraclenerd.com//2009/11/apex-install-321-on-11gr2.html&quot;&gt;APEX: Install 3.2.1 on 11gR2&lt;/a&gt;&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;263&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;225&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://www.oraclenerd.com//2009/12/ebs-install-part-3.html&quot;&gt;EBS Install Guide - Part 3&lt;/a&gt;&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;253&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;202&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://www.oraclenerd.com//labels/obiee.html&quot;&gt;OBIEE Posts&lt;/a&gt;&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;243&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;215&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://www.oraclenerd.com//2009/03/obiee-how-to-migrate-your-rpd.html&quot;&gt;OBIEE:  How to Migrate Your rpd&lt;/a&gt;&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;234&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;183&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://www.oraclenerd.com//2008/06/bulk-collect-and-forall.html&quot;&gt;BULK COLLECT and FORALL&lt;/a&gt;&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;187&lt;/td&gt;&lt;td align=&#039;right&#039;&gt;166&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;img width=&quot;1&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/8884584404576003487-7071407464105112840?l=www.oraclenerd.com&quot; alt=&quot;&quot; /&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/AxiH2wqJqVVmiYTh6tIY737xODo/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/AxiH2wqJqVVmiYTh6tIY737xODo/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/AxiH2wqJqVVmiYTh6tIY737xODo/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/AxiH2wqJqVVmiYTh6tIY737xODo/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 08 Mar 2010 19:35:00 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8166 at http://www.ora600.be</guid>
</item>
<item>
 <title>Oracle OpenWorld 2010 Call For Papers</title>
 <link>http://www.ora600.be/news/oracle-openworld-2010-call-papers</link>
 <description>&lt;p&gt;&lt;/p&gt;

&lt;p&gt;Oracle OpenWorld 2010 Call For Papers is now open.  &lt;/p&gt;

&lt;p&gt;Oracle OpenWorld is the place to present your database ideas, experiences, and accomplishments to tens of thousands of the world&#039;s most demanding Oracle users.&lt;/p&gt;

&lt;p&gt;Submit a database paper and you could present your ideas to the highest-profile technology thought leaders, C-level executives from the Fortune 100, peers from around the world, and the most-influential members of the media.&lt;/p&gt;

&lt;p&gt;We are eager to hear your database ideas, implementations and experiences, and we invite you to share them with the entire Oracle community. Now is your chance to be heard.  This CFPs closes 11:59 pm PDT on Sunday, March 21&lt;/p&gt;

&lt;p&gt;Get started at &lt;a href=&quot;http://ow.ly/1eJYk&quot;&gt;http://ow.ly/1eJYk&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We&#039;ll see you at the show!&lt;/p&gt;

&lt;p&gt;&lt;br /&gt;
var gaJsHost = ((&quot;https:&quot; == document.location.protocol) ? &quot;https://ssl.&quot; : &quot;http://www.&quot;);&lt;br /&gt;
document.write(unescape(&quot;%3Cscript src=&#039;&quot; + gaJsHost + &quot;google-analytics.com/ga.js&#039; type=&#039;text/javascript&#039;%3E%3C/script%3E&quot;));&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
try {&lt;br /&gt;
var pageTracker = _gat._getTracker(&quot;UA-13185312-1&quot;);&lt;br /&gt;
pageTracker._trackPageview();&lt;br /&gt;
} catch(err) {}&lt;br /&gt;
&lt;/p&gt;</description>
 <pubDate>Mon, 08 Mar 2010 19:14:20 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8168 at http://www.ora600.be</guid>
</item>
<item>
 <title>ORA-15477: cannot communicate with the volume driver</title>
 <link>http://www.ora600.be/news/ora-15477-cannot-communicate-volume-driver</link>
 <description>ORA-15477: cannot communicate with the volume driver&lt;br /&gt;when add volume...&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; alter diskgroup data add volume &#039;asm_vol1&#039; size 5G;&lt;br /&gt;alter diskgroup data add volume &#039;asm_vol1&#039; size 5G&lt;br /&gt;*&lt;br /&gt;ERROR at line 1:&lt;br /&gt;ORA-15032: not all alterations performed&lt;br /&gt;ORA-15477: cannot communicate with the volume driver&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; alter diskgroup data set attribute &#039;compatible.advm&#039;=&#039;11.2&#039;;&lt;br /&gt;alter diskgroup data set attribute &#039;compatible.advm&#039;=&#039;11.2&#039;&lt;br /&gt;*&lt;br /&gt;ERROR at line 1:&lt;br /&gt;ORA-15032: not all alterations performed&lt;br /&gt;ORA-15242: could not set attribute compatible.advm&lt;br /&gt;ORA-15238: 11.2 is not a valid value for attribute compatible.advm&lt;br /&gt;ORA-15477: cannot communicate with the volume driver&lt;/blockquote&gt;&lt;blockquote&gt;# acfsutil registry -l&lt;br /&gt;acfsutil registry: CLSU-00100: Operating System function: open64 (/dev/ofsctl) failed with error data: 2&lt;br /&gt;acfsutil registry: CLSU-00101: Operating System error message: No such file or directory&lt;br /&gt;acfsutil registry: CLSU-00103: error location: OOF_1&lt;br /&gt;acfsutil registry: ACFS-00502: Failed to communicate with the ACFS driver.  Verify the ACFS driver has been loaded.&lt;/blockquote&gt;then load ACFS.&lt;br /&gt;&lt;blockquote&gt;# /u01/app/grid/bin/acfsload start -s&lt;br /&gt;ACFS-9327: Verifying ADVM/ACFS devices.&lt;br /&gt;ACFS-9322: done.&lt;br /&gt;&lt;/blockquote&gt;Try again.&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; alter diskgroup data set attribute &#039;compatible.advm&#039;=&#039;11.2&#039;;&lt;br /&gt;&lt;br /&gt;Diskgroup altered.&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; alter diskgroup data add volume &#039;asm_vol1&#039; size 5G;&lt;br /&gt;&lt;br /&gt;Diskgroup altered.&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; !ls -l /dev/asm/asm_v*&lt;br /&gt;brwxrwx--- 1 root oinstall 252, 86529 Mar  9 00:11 /dev/asm/asm_vol1-169&lt;/blockquote&gt;Written By: Surachart Opun

http://surachartopun.com&lt;img width=&quot;1&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/20612393-4517402527904666272?l=surachartopun.com&quot; alt=&quot;&quot; /&gt;</description>
 <pubDate>Mon, 08 Mar 2010 18:27:00 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8160 at http://www.ora600.be</guid>
</item>
<item>
 <title>Be [proh-ak-tiv]</title>
 <link>http://www.ora600.be/news/be-proh-ak-tiv</link>
 <description>&lt;p&gt;I keep telling my team that they we need to be more proactive all the time.  On our website (&lt;a href=&quot;//localhost/owa/redir.aspx&quot;&gt;www.remotedbaexperts.com&lt;/a&gt;) we talk a lot about proactive monitoring, proactive problem prevention, etc.&lt;/p&gt;
&lt;p&gt;Proactivity has several meanings:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Having an orientation to the future, anticipating problems and taking affirmative steps to deal positively with them rather than reacting after a situation has already occurred.&lt;/li&gt;
&lt;li&gt;Acting in advance to deal with an expected difficulty.&lt;/li&gt;
&lt;li&gt;Psychiatrist Dr. Viktor Frankl, describes a “proactive person” as one that takes responsibility for their life, instead of blaming outside circumstances or other people for their situation.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;As you may infer from the above definitions, there are several aspects to proactivity.  Proactivity is an attitude or mindset.  My first exposure to the term came from Stephen Covey’s book, &lt;em&gt;Seven Habits of Highly Effective People,&lt;/em&gt; a few years ago.  He treats the subject better than anyone else.  According to him, being proactive is the first of seven habits that highly effective people develop and live by.  His model of proactivity claims that humans, unlike any other living forms, possess four abilities or capacities:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Self-awareness&lt;/li&gt;
&lt;li&gt;Imagination&lt;/li&gt;
&lt;li&gt;Conscience&lt;/li&gt;
&lt;li&gt;Independent will&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These capacities enable the “freedom to choose” how we respond to a stimulus—the things we see, hear, think, etc. or the conditions and circumstances we find ourselves in.  Covey points out that, “highly proactive people do not blame circumstances, conditions, or past conditioning for their behavior.”   Their behaviors (responses) are based on values, not on feelings.  Reactive people tend to be affected more by their environment and by things outside their control such as weather.  If the weather is “bad” they feel “bad” &amp;#8212; they suffer and get down because of it.  They worry about the war, the economy, and about many other things that they have nothing or very little to do about or control over.  They worry about others and what they did, do, will do, or did not, don’t, or will not do.  They are also highly affected by how others treat them, react to them, etc.  They live at the mercy of others.&lt;/p&gt;
&lt;p&gt;Covey poses that until a “reactive” or “non-proactive” person realizes, acknowledges, and accepts they are what and where they are today because of the choices and decisions they have made, as opposed to external conditions, circumstances and conditioning, they cannot become proactive.&lt;/p&gt;
&lt;p&gt;Reactive people use a different language than proactive ones.  Reactive people tend to say things like:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Nothing I can do&lt;/li&gt;
&lt;li&gt;I can’t help it&lt;/li&gt;
&lt;li&gt;I have to…&lt;/li&gt;
&lt;li&gt;I cannot…&lt;/li&gt;
&lt;li&gt;I wish…&lt;/li&gt;
&lt;li&gt;There is no way…&lt;/li&gt;
&lt;li&gt;It’s impossible…&lt;/li&gt;
&lt;li&gt;If it wasn’t for…&lt;/li&gt;
&lt;li&gt;I have no control…&lt;/li&gt;
&lt;li&gt;Why are they doing this to me?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Worst, they believe these things and allow them to control them.  They put their time and energy on trying to change things and people they do not have any control over.  On the other hand proactive people focus on things they control and can do something about.  According to Covey, when you do that you actually increase your “circle of influence.”  By focusing and working on things you can control, you become better able to affect things that you otherwise did not before.  That is the key point and most powerful lesson regarding this concept.&lt;/p&gt;
&lt;p&gt;Covey describes three areas where the problems we face in life fall:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Direct control (problems involving our own behavior)&lt;/li&gt;
&lt;li&gt;Indirect control (problems involving others’ behavior)&lt;/li&gt;
&lt;li&gt;No control  (problems we can do nothing about)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;He goes on to recommend that in order to solve “direct control” problems we need to work on our habits.   To solve “indirect control” problems we need to work on our methods of influence.  And in order to deal with problems we do not control we need to learn to accept there is nothing we can do and then move on.&lt;/p&gt;
&lt;p&gt;I mentioned earlier that the first step to change our stance from reactive to proactive is recognizing and accepting it.  The “language” list above can help you monitor your own language and assess your stance.  Once you do make a list of all the things you worry most about, then determine which area of control they lay in: Direct, Indirect, or No control.  With that inventory complete, move on to identifying the change strategies that will best deal with them including habits to change, new or different methods of influence, etc.  If you do so, you will see your “circle of influence” grow bigger and bigger &amp;#8212; Imagine what that would be like &amp;#8212; And what it would mean to you and others important to you?&lt;/p&gt;
&lt;p&gt;If you have not read Covey’s book &lt;em&gt;Seven Habits of Highly Effective People&lt;/em&gt; yet, get a hold of it ASAP &amp;#8212; It is GREAT &amp;#8212; it may change your life!!!  And NO, I did not get a free copy of the book to “promote” itJ! In fact, I think it is one of the most sold business books of all times.&lt;/p&gt;
&lt;p&gt;The &lt;strong&gt;&lt;em&gt;BEST&lt;/em&gt; &lt;/strong&gt;is Yet to Come!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Epi Torres, CEO&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;img title=&quot;RDBAELOGO&quot; src=&quot;http://www.remotedbaexperts.com/Blog/wp-content/uploads/2009/07/RDBAELOGO.gif&quot; alt=&quot;RDBAELOGO&quot; width=&quot;205&quot; height=&quot;44&quot; /&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.remotedbaexperts.com/Blog/2010/03/be-proh-ak-tiv/&quot;&gt;Be [proh-ak-tiv]&lt;/a&gt; is a post from: &lt;a href=&quot;http://www.remotedbaexperts.com/Blog&quot;&gt;Remote DBA Experts&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 08 Mar 2010 18:00:05 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8159 at http://www.ora600.be</guid>
</item>
<item>
 <title>April Seattle Apps Tech Group Networking Event</title>
 <link>http://www.ora600.be/news/april-seattle-apps-tech-group-networking-event</link>
 <description>&lt;p&gt;We&amp;#8217;re going to change it up a little bit and have a networking / social event. No presentation this time &amp;#8211; just a chance to meet up with colleagues in the area for some food, drink, and conversation. The location is TBD, but will be somewhere downtown &amp;#8211; we&amp;#8217;re working on securing a spot.&lt;/p&gt;
&lt;p&gt;Please send this out to anyone you think might be interested; we&amp;#8217;d like to get as many of the people signed up on this list to attend as possible!&lt;/p&gt;
&lt;p&gt;The Meetup RSVP can be found at:  &lt;a title=&quot;Apps tech group networking event&quot; href=&quot;http://www.meetup.com/seattle-oracle-apps-tech/calendar/12816702/&quot; target=&quot;_blank&quot;&gt;http://www.meetup.com/seattle-oracle-apps-tech/calendar/12816702/&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href=&quot;http://www.bluegecko.net/oracle/april-seattle-apps-tech-group-networking-event/&quot; rel=&quot;bookmark&quot; title=&quot; April Seattle Apps Tech Group Networking Event&quot;&gt;April Seattle Apps Tech Group Networking Event&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.bluegecko.net/news-events/seattle-area-oracle-applications-tech-group/&quot; rel=&quot;bookmark&quot; title=&quot; Seattle-area Oracle Applications Tech Group&quot;&gt;Seattle-area Oracle Applications Tech Group&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.bluegecko.net/oracle/6-things-to-do-after-an-oracle-apps-r12-install/&quot; rel=&quot;bookmark&quot; title=&quot; 6 things to do after an Oracle Apps R12 install&quot;&gt;6 things to do after an Oracle Apps R12 install&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/BlueGecko/~4/rlZYok6ek3I&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
 <pubDate>Mon, 08 Mar 2010 17:16:35 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8162 at http://www.ora600.be</guid>
</item>
<item>
 <title>April Seattle Apps Tech Group Networking Event</title>
 <link>http://www.ora600.be/news/april-seattle-apps-tech-group-networking-event-0</link>
 <description>&lt;p&gt;Hi All,&lt;/p&gt;
&lt;p&gt;We&amp;#8217;re going to change it up a little bit and have a networking / social event. No presentation this time &amp;#8211; just a chance to meet up with colleagues in the area for some food, drink, and conversation. The location is TBD, but will be somewhere downtown &amp;#8211; we&amp;#8217;re working on securing a spot.&lt;/p&gt;
&lt;p&gt;Please send this out to anyone you think might be interested; we&amp;#8217;d like to get as many of the people signed up on this list to attend as possible!&lt;/p&gt;
&lt;p&gt;Any vendors who would like to sponsor, please let me know.&lt;/p&gt;
&lt;p&gt;Chuck&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href=&quot;http://www.bluegecko.net/news-events/832/&quot; rel=&quot;bookmark&quot; title=&quot; April Seattle Apps Tech Group Networking Event&quot;&gt;April Seattle Apps Tech Group Networking Event&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.bluegecko.net/news-events/seattle-area-oracle-applications-tech-group/&quot; rel=&quot;bookmark&quot; title=&quot; Seattle-area Oracle Applications Tech Group&quot;&gt;Seattle-area Oracle Applications Tech Group&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.bluegecko.net/events/rocky-mountain-oracle-user-group/&quot; rel=&quot;bookmark&quot; title=&quot; Rocky Mountain Oracle User Group&quot;&gt;Rocky Mountain Oracle User Group&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/BlueGecko/~4/5vN0WaZgBJY&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
 <pubDate>Mon, 08 Mar 2010 17:11:23 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8163 at http://www.ora600.be</guid>
</item>
<item>
 <title>ORA-15041 - ASM Disk Group Unbalanced</title>
 <link>http://www.ora600.be/news/ora-15041-asm-disk-group-unbalanced</link>
 <description>Use ASM Disk Group NORMAL redundancy (11gR2) and found error while create tablespace.&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; create tablespace test datafile &#039;+DATA&#039; size 5G;&lt;br /&gt;create tablespace test datafile &#039;+DATA&#039; size 5G&lt;br /&gt;*&lt;br /&gt;ERROR at line 1:&lt;br /&gt;ORA-01119: error in creating database file &#039;+DATA&#039;&lt;br /&gt;ORA-17502: ksfdcre:4 Failed to create file +DATA&lt;br /&gt;ORA-15041: diskgroup &quot;DATA&quot; space exhausted&lt;/blockquote&gt;What Wrong??? - I have free size on &quot;DATA&quot;, Check ASM Disk Group.&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; select name, total_mb, free_mb, required_mirror_free_mb, usable_file_mb ,type from v$asm_diskgroup where name=&#039;DATA&#039;;&lt;br /&gt;&lt;br /&gt;NAME                             TOTAL_MB    FREE_MB REQUIRED_MIRROR_FREE_MB USABLE_FILE_MB TYPE&lt;br /&gt;------------------------------ ---------- ---------- ----------------------- -------------- ------&lt;br /&gt;DATA                               257807     112233                   23437          44398 NORMAL&lt;/blockquote&gt;Check (ASM) alert log file.&lt;br /&gt;&lt;blockquote&gt;kfdpDumpBg()&lt;br /&gt;kfdpDumpBg() - Done&lt;/blockquote&gt;Check on ASM Instance and Investigate the problem.&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; select path, free_mb,total_mb,state from v$asm_disk where group_number in (select group_number from v$asm_diskgroup where name=&#039;DATA&#039;);&lt;br /&gt;&lt;br /&gt;PATH                   FREE_MB   TOTAL_MB STATE&lt;br /&gt;------------------- ---------- ---------- --------&lt;br /&gt;/dev/sdl                  1017      23437 NORMAL&lt;br /&gt;/dev/sdb                  7867      23437 NORMAL&lt;br /&gt;/dev/sdk                  7988      23437 NORMAL&lt;br /&gt;/dev/sdq                 23211      23437 NORMAL&lt;br /&gt;/dev/sdf                  7864      23437 NORMAL&lt;br /&gt;/dev/sdg                 14819      23437 NORMAL&lt;br /&gt;/dev/sdc                 13827      23437 NORMAL&lt;br /&gt;/dev/sdi                  6971      23437 NORMAL&lt;br /&gt;/dev/sde                 14829      23437 NORMAL&lt;br /&gt;/dev/sdj                     1      23437 NORMAL&lt;br /&gt;/dev/sdd                 13839      23437 NORMAL&lt;/blockquote&gt;Disk Group UNBALANCE, then&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; alter diskgroup data rebalance power 11;&lt;br /&gt;&lt;br /&gt;Diskgroup altered.&lt;/blockquote&gt;Check.&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; select path, free_mb,total_mb,state from v$asm_disk where group_number in (select group_number from v$asm_diskgroup where name=&#039;DATA&#039;);&lt;br /&gt;&lt;br /&gt;PATH                   FREE_MB   TOTAL_MB STATE&lt;br /&gt;------------------- ---------- ---------- --------&lt;br /&gt;/dev/sdl                  1018      23437 NORMAL&lt;br /&gt;/dev/sdb                  7867      23437 NORMAL&lt;br /&gt;/dev/sdk                  7988      23437 NORMAL&lt;br /&gt;/dev/sdq                 23209      23437 NORMAL&lt;br /&gt;/dev/sdf                  7864      23437 NORMAL&lt;br /&gt;/dev/sdg                 14820      23437 NORMAL&lt;br /&gt;/dev/sdc                 13827      23437 NORMAL&lt;br /&gt;/dev/sdi                  6971      23437 NORMAL&lt;br /&gt;/dev/sde                 14830      23437 NORMAL&lt;br /&gt;/dev/sdj                     0      23437 NORMAL&lt;br /&gt;/dev/sdd                 13839      23437 NORMAL&lt;/blockquote&gt;Nothing to resolve... Check on v$operation.&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; select group_number, operation, state, error_code from v$asm_operation;&lt;br /&gt;&lt;br /&gt;GROUP_NUMBER OPERA STAT ERROR_CODE&lt;br /&gt;------------ ----- ---- --------------------------------------------&lt;br /&gt;          1 REBAL ERRS ORA-15041&lt;br /&gt;&lt;/blockquote&gt;Try to check &amp;amp; repair ASM Disk Group.&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; alter diskgroup data check all repair;&lt;br /&gt;&lt;br /&gt;Diskgroup altered.&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; select group_number, operation, state, error_code from v$asm_operation;&lt;br /&gt;&lt;br /&gt;GROUP_NUMBER OPERA STAT ERROR_CODE&lt;br /&gt;------------ ----- ---- --------------------------------------------&lt;br /&gt;          1 REBAL ERRS ORA-15041&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; select path, free_mb,total_mb,state from v$asm_disk where group_number in (select group_number from v$asm_diskgroup where name=&#039;DATA&#039;);&lt;br /&gt;&lt;br /&gt;PATH                   FREE_MB   TOTAL_MB STATE&lt;br /&gt;------------------- ---------- ---------- --------&lt;br /&gt;/dev/sdl                  1018      23437 NORMAL&lt;br /&gt;/dev/sdb                  7867      23437 NORMAL&lt;br /&gt;/dev/sdk                  7988      23437 NORMAL&lt;br /&gt;/dev/sdq                 23209      23437 NORMAL&lt;br /&gt;/dev/sdf                  7864      23437 NORMAL&lt;br /&gt;/dev/sdg                 14820      23437 NORMAL&lt;br /&gt;/dev/sdc                 13827      23437 NORMAL&lt;br /&gt;/dev/sdi                  6971      23437 NORMAL&lt;br /&gt;/dev/sde                 14830      23437 NORMAL&lt;br /&gt;/dev/sdj                     0      23437 NORMAL&lt;br /&gt;/dev/sdd                 13839      23437 NORMAL&lt;/blockquote&gt;Nothing to resolve... - &quot;DATA&quot; ASM Disk Group still unbalance, and v$asm_operation show error.&lt;br /&gt;think &amp;amp; make Idea: Move some files or resize some files on &quot;DATA&quot; Disk Group, so login database and make something.&lt;br /&gt;Example:&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; alter database tempfile &#039;+DATA/orcl/tempfile/temp.263.712603677&#039; resize 1G;&lt;br /&gt;&lt;br /&gt;Database altered.&lt;/blockquote&gt;Check on ASM again.&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; select path, free_mb,total_mb,state from v$asm_disk where group_number in (select group_number from v$asm_diskgroup where name=&#039;DATA&#039;);&lt;br /&gt;&lt;br /&gt;PATH                   FREE_MB   TOTAL_MB STATE&lt;br /&gt;------------------- ---------- ---------- --------&lt;br /&gt;/dev/sdl                  1685      23437 NORMAL&lt;br /&gt;/dev/sdb                  8322      23437 NORMAL&lt;br /&gt;/dev/sdk                  8357      23437 NORMAL&lt;br /&gt;/dev/sdq                 22855      23437 NORMAL&lt;br /&gt;/dev/sdf                  8324      23437 NORMAL&lt;br /&gt;/dev/sdg                 15013      23437 NORMAL&lt;br /&gt;/dev/sdc                 14043      23437 NORMAL&lt;br /&gt;/dev/sdi                  7386      23437 NORMAL&lt;br /&gt;/dev/sde                 15011      23437 NORMAL&lt;br /&gt;/dev/sdj                   711      23437 NORMAL&lt;br /&gt;/dev/sdd                 14054      23437 NORMAL&lt;/blockquote&gt;Check v$asm_operation.&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; select group_number, operation, state, power, error_code from v$asm_operation;&lt;br /&gt;&lt;br /&gt;GROUP_NUMBER OPERA STAT ERROR_CODE&lt;br /&gt;------------ ----- ---- --------------------------------------------&lt;br /&gt;          1 REBAL RUN&lt;/blockquote&gt;ASM instance... &quot;DATA&quot; Disk Group rebalancing, So Wait... and check&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; select group_number, operation, state, power, error_code from v$asm_operation;&lt;br /&gt;&lt;br /&gt;no rows selected&lt;/blockquote&gt;&lt;blockquote&gt;SQL&amp;gt; select path, free_mb,total_mb,state from v$asm_disk where group_number in (select group_number from v$asm_diskgroup where name=&#039;DATA&#039;);&lt;br /&gt;&lt;br /&gt;PATH                   FREE_MB   TOTAL_MB STATE&lt;br /&gt;------------------- ---------- ---------- --------&lt;br /&gt;/dev/sdl                 10524      23437 NORMAL&lt;br /&gt;/dev/sdb                 10524      23437 NORMAL&lt;br /&gt;/dev/sdk                 10528      23437 NORMAL&lt;br /&gt;/dev/sdq                 10532      23437 NORMAL&lt;br /&gt;/dev/sdf                 10521      23437 NORMAL&lt;br /&gt;/dev/sdg                 10523      23437 NORMAL&lt;br /&gt;/dev/sdc                 10522      23437 NORMAL&lt;br /&gt;/dev/sdi                 10526      23437 NORMAL&lt;br /&gt;/dev/sde                 10522      23437 NORMAL&lt;br /&gt;/dev/sdj                 10522      23437 NORMAL&lt;br /&gt;/dev/sdd                 10523      23437 NORMAL&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; alter diskgroup data rebalance power 1;&lt;br /&gt;&lt;br /&gt;Diskgroup altered&lt;/blockquote&gt;Disks rebalanced, Try to create tablespace again.&lt;br /&gt;&lt;blockquote&gt;SQL&amp;gt; select name, total_mb, free_mb, required_mirror_free_mb, usable_file_mb ,type from v$asm_diskgroup where name=&#039;DATA&#039;;&lt;br /&gt;&lt;br /&gt;NAME                             TOTAL_MB    FREE_MB REQUIRED_MIRROR_FREE_MB USABLE_FILE_MB TYPE&lt;br /&gt;------------------------------ ---------- ---------- ----------------------- -------------- ------&lt;br /&gt;DATA                               257807     115767                   12916          51425 NORMAL&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; create tablespace test datafile &#039;+DATA&#039; size 30G;&lt;br /&gt;&lt;br /&gt;Tablespace created.&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; select path, free_mb,total_mb,state from v$asm_disk where group_number in (select group_number from v$asm_diskgroup where name=&#039;DATA&#039;);&lt;br /&gt;&lt;br /&gt;PATH                   FREE_MB   TOTAL_MB STATE&lt;br /&gt;------------------- ---------- ---------- --------&lt;br /&gt;/dev/sdl                  4936      23437 NORMAL&lt;br /&gt;/dev/sdb                  4931      23437 NORMAL&lt;br /&gt;/dev/sdk                  4931      23437 NORMAL&lt;br /&gt;/dev/sdq                  4932      23437 NORMAL&lt;br /&gt;/dev/sdf                  4922      23437 NORMAL&lt;br /&gt;/dev/sdg                  4933      23437 NORMAL&lt;br /&gt;/dev/sdc                  4936      23437 NORMAL&lt;br /&gt;/dev/sdi                  4940      23437 NORMAL&lt;br /&gt;/dev/sde                  4933      23437 NORMAL&lt;br /&gt;/dev/sdj                  4928      23437 NORMAL&lt;br /&gt;/dev/sdd                  4938      23437 NORMAL&lt;/blockquote&gt;What this told me? Make Sure ASM Disk Group no problem (REBALANCE).Written By: Surachart Opun

http://surachartopun.com&lt;img width=&quot;1&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/20612393-5780532693051446174?l=surachartopun.com&quot; alt=&quot;&quot; /&gt;</description>
 <pubDate>Mon, 08 Mar 2010 17:07:00 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8161 at http://www.ora600.be</guid>
</item>
<item>
 <title>SQL Developer: Install Unit Testing Repository</title>
 <link>http://www.ora600.be/news/sql-developer-install-unit-testing-repository</link>
 <description>Get the latest SQL Developer release &lt;a href=&quot;http://htmldb.oracle.com/pls/otn/f?p=42626:16&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I&#039;m not a big tools guy, I prefer SQL*Plus to anything else.  I especially don&#039;t like paying for tools (yes, the database is a tool and costs a &lt;i&gt;lot&lt;/i&gt; of money...I do realize the hypocrisy).&lt;br /&gt;&lt;br /&gt;After Syme Kutz&#039;s presentation at SOUG, I&#039;ve been looking more closely at SQL Developer.  I&#039;ve been using it (and JDeveloper) since they were both made freely available a few years ago.  Mostly for the schema browsing, looking around, importing and exporting data.  I do use it (SQL Developer) to write reports that I can share with the Business folks as well.&lt;br /&gt;&lt;br /&gt;Syme&#039;s presentation was primarily on Unit Testing (which I begged for).  First step to using Unit Testing is to install the repository, a set of tables the application uses to build and store tests and their results.&lt;br /&gt;&lt;br /&gt;You need to have version 2.1 or greater.&lt;br /&gt;&lt;br /&gt;First up, go to Tools --&amp;gt; Unit Test --&amp;gt; Select Current Repository&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh4.ggpht.com/_rhCtHYLiamQ/S5T5iACnbHI/AAAAAAABX8Q/PRHG3nhK0tw/s800/01_select_current_repo.jpg&quot; alt=&quot;select repostory&quot; /&gt;&lt;br /&gt;&lt;br /&gt;You&#039;ll be prompted to select a connection (i.e. database) to use&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh3.ggpht.com/_rhCtHYLiamQ/S5T5ijeAC-I/AAAAAAABX8Y/BJ65Ifqmq2c/s800/02_select_connection.jpg&quot; alt=&quot;select connection&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Would you like to create one now?  Select Yes.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh3.ggpht.com/_rhCtHYLiamQ/S5T5i09LSQI/AAAAAAABX8g/d-D6P-JiPPY/s800/03_no_repository.jpg&quot; alt=&quot;no repository found&quot; /&gt;&lt;br /&gt;&lt;br /&gt;You&#039;re then told the the required roles do not exist, select OK.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh5.ggpht.com/_rhCtHYLiamQ/S5T5jYDLUrI/AAAAAAABX8o/7vVyS0uqG_Y/s800/04_role_does_not_exist.jpg&quot; alt=&quot;roles do not exist&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Confirm running SQL&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh4.ggpht.com/_rhCtHYLiamQ/S5T5j01Qu9I/AAAAAAABX8w/5b8Q3fdJXT4/s800/06_running_sql.jpg&quot; alt=&quot;confirm sql&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Running...will take just a few seconds&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh4.ggpht.com/_rhCtHYLiamQ/S5T5kIOrxKI/AAAAAAABX84/yH5yMpu6BrM/s800/07_running.jpg&quot; alt=&quot;running&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Success!&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://lh5.ggpht.com/_rhCtHYLiamQ/S5T5kk0-riI/AAAAAAABX9A/C9bgbPfTcJc/s800/08_create_succeeded.jpg&quot; alt=&quot;success!&quot; /&gt;&lt;br /&gt;&lt;br /&gt;That&#039;s it.  Easy right?  Future posts will detail managing users and creating tests.&lt;img width=&quot;1&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/8884584404576003487-1648607024059314877?l=www.oraclenerd.com&quot; alt=&quot;&quot; /&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/1N9JhRYfVXCc88iXRu6iTvKCwic/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/1N9JhRYfVXCc88iXRu6iTvKCwic/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/1N9JhRYfVXCc88iXRu6iTvKCwic/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/1N9JhRYfVXCc88iXRu6iTvKCwic/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 08 Mar 2010 14:41:00 +0100</pubDate>
 <dc:creator>kurtvm</dc:creator>
 <guid isPermaLink="false">8158 at http://www.ora600.be</guid>
</item>
</channel>
</rss>
