<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tanel Poder's blog: Core IT for Geeks and Pros &#187; Uncategorized</title>
	<atom:link href="http://blog.tanelpoder.com/tag/uncategorized/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.tanelpoder.com</link>
	<description>Oracle troubleshooting, internals and performance tuning</description>
	<lastBuildDate>Sat, 31 Jul 2010 05:44:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Austrian Oracle User Group event on 15th Oct in Vienna</title>
		<link>http://blog.tanelpoder.com/2008/10/14/austrian-oracle-user-group-event-on-15th-oct-in-vienna/</link>
		<comments>http://blog.tanelpoder.com/2008/10/14/austrian-oracle-user-group-event-on-15th-oct-in-vienna/#comments</comments>
		<pubDate>Mon, 13 Oct 2008 16:54:29 +0000</pubDate>
		<dc:creator>Tanel Poder</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tanelpoder.wordpress.com/?p=143</guid>
		<description><![CDATA[I will be speaking at Austrian Oracle User Group event in Vienna this Wednesday (15. Oct) with Christian Antognini I will deliver an 1 hour version of my Advanced Oracle Troubleshooting presentation there, so if you&#8217;re in Austria and want to see what&#8217;s coming in my full length seminar I deliver on 3.-4. Nov also [...]]]></description>
			<content:encoded><![CDATA[<p>I will be speaking at <a href="http://blog.tanelpoder.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2FvdWcuYXQvMjAwOC9leHBfMDgxMDE1Lmh0bQ==">Austrian Oracle User Group event in Vienna</a> this Wednesday (15. Oct) with <a href="http://blog.tanelpoder.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2FudG9nbmluaS5jaA==">Christian Antognini</a></p>
<p>I will deliver an 1 hour version of my Advanced Oracle Troubleshooting presentation there, so if you&#8217;re in Austria and want to see what&#8217;s coming in my full length seminar I deliver on 3.-4. Nov also in Vienna, then you can see a preview on this Wednesday :)</p>
<div class="facebook_like_button"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.tanelpoder.com%2F2008%2F10%2F14%2Faustrian-oracle-user-group-event-on-15th-oct-in-vienna%2F&amp;layout=standard&amp;show-faces=true&amp;width=450&amp;action=like&amp;font=arial&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="padding: 0px 0px; border:none; overflow:hidden; width:450px; height:70px;"></iframe></div> <img src="http://blog.tanelpoder.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=143" width="1" height="1" style="display: none;" /><p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://blog.tanelpoder.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://blog.tanelpoder.com/2008/10/14/austrian-oracle-user-group-event-on-15th-oct-in-vienna/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Debugger dangers</title>
		<link>http://blog.tanelpoder.com/2008/06/14/debugger-dangers/</link>
		<comments>http://blog.tanelpoder.com/2008/06/14/debugger-dangers/#comments</comments>
		<pubDate>Sat, 14 Jun 2008 11:51:54 +0000</pubDate>
		<dc:creator>Tanel Poder</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tanelpoder.wordpress.com/2008/06/14/debugger-dangers/</guid>
		<description><![CDATA[Whenever I deliver training or conference presentations on advanced troubleshooting topics, I usually spend some time demonstrating how to get and interpret Oracle server process stack traces. As I&#8217;ve mentioned before, stack traces are the ultimate indicators showing where in Oracle kernel (or whatever application) code the execution currently is (or where it was when [...]]]></description>
			<content:encoded><![CDATA[<p>Whenever I deliver training or conference presentations on advanced troubleshooting topics, I usually spend some time demonstrating how to get and interpret Oracle server process stack traces.<br />
As I&#8217;ve mentioned before, stack traces are the ultimate indicators showing where in Oracle kernel (or whatever application) code the execution currently is (or where it was when a crash occurred). This is the reason Oracle Support asks for stack traces whenever there&#8217;s a crash or non-trivial hang involved, that&#8217;s why Oracle database dumps errorstacks when ORA-600&#8242;s and other exceptions occur.</p>
<p>There are multiple ways for getting stack traces for Oracle, but not all ways are equal. Some give you more contextual info, some less, but what I&#8217;m blogging about today is that some ways are less safe than others.</p>
<p>I was using <strong>pstack</strong> on Linux for diagnosing an IO related performance issue. I executed a <em>create table as select</em> statement and ran pstack in a loop for getting stack traces from the running process.</p>
<p>However in one of the test runs I got following error in my Oracle session:</p>
<pre><code>SQL&gt; create table t as select * from dba_source;
create table t as select * from dba_source
                                *
ERROR at line 1:
ORA-01115: IO error reading block from file 1 (block # 11161)
ORA-01110: data file 1: '/u01/oradata/LIN10G/system01.dbf'
<strong>ORA-27091: unable to queue I/O
ORA-27072: File I/O error
</strong>Additional information: 3
Additional information: 11145
Additional information: 32768

</code></pre>
<p>I suspected that this issue was due Linux pstack, stopped the pstack script and ran my CTAS from <em>the same Oracle session</em> again:</p>
<p><span id="more-80"></span></p>
<pre><code>SQL&gt; create table t as select * from dba_source;

Table created.

</code></pre>
<p>The command now succeeded ok.</p>
<p>I tried to reproduce the failure again, but during the few minutes I spent testing, it didn&#8217;t occur again.</p>
<p>The failure happened likely due the fact that pstack on Linux is actually just a wrapper script around gdb. GDB in turn suspends the process under investigation and attaches to it through ptrace() syscall. And ptrace() syscall (and debuggers in general) have historically caused issues to host processes when communicating with kernel and other processes. For example they can block some signals or interrupts from being propagated back up to the &#8220;host&#8221; process.</p>
<p>Normally I have warned people about using debugger-based stack tracing due exactly those reasons, and now I managed to capture nice evidence.<br />
I recommend to stay away with debugger from critical background processes on production systems, unless things have already collapsed anyway (that ought to be common sense anyway). So it&#8217;s good to know that Linux pstack is actually just a script with GDB backtrace command in it.</p>
<p>So, what are the safer and less safer stack tracing options:</p>
<ul>
<li>oradebug dump errorstack &#8211; unsafe for production (as dump errorstack actually alters the process under investigation from its original codepath)</li>
<li>debugger based errorstack (gdb,dbx,mdb and Linux pstack) &#8211; can be unsafe for production due missed signals &amp; interrupts if you get unlucky. Therefore you should stay away from at least the critical background processes with such tools</li>
<li>pstack on Solaris (and procstack on AIX) &#8211; safe as they don&#8217;t use the ptrace() interface but just read the info required from /proc filesystem</li>
<li>DTrace &#8211; safe by design</li>
</ul>
<p>I haven&#8217;t checked how HP-UX pstack works, so can&#8217;t advise on that.</p>
<div class="facebook_like_button"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.tanelpoder.com%2F2008%2F06%2F14%2Fdebugger-dangers%2F&amp;layout=standard&amp;show-faces=true&amp;width=450&amp;action=like&amp;font=arial&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="padding: 0px 0px; border:none; overflow:hidden; width:450px; height:70px;"></iframe></div> <img src="http://blog.tanelpoder.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=80" width="1" height="1" style="display: none;" /><p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://blog.tanelpoder.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://blog.tanelpoder.com/2008/06/14/debugger-dangers/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Performance Tools Quick Reference Guide</title>
		<link>http://blog.tanelpoder.com/2008/06/03/performance-tools-quick-reference-guide/</link>
		<comments>http://blog.tanelpoder.com/2008/06/03/performance-tools-quick-reference-guide/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 18:09:23 +0000</pubDate>
		<dc:creator>Tanel Poder</dc:creator>
				<category><![CDATA[Administration]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tanelpoder.wordpress.com/?p=73</guid>
		<description><![CDATA[There&#8217;s a nice Metalink Note 438452.1 about various less known Oracle performance tuning utilities. If you haven&#8217;t heard about things like StackX, LTOM, HangFG, SQLTXPLAIN, OS_Watcher or OPDG then it&#8217;s time to check this note out! :)]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s a nice Metalink Note <strong>438452.1</strong> about various less known Oracle performance tuning utilities.</p>
<p>If you haven&#8217;t heard about things like StackX, LTOM, HangFG, SQLTXPLAIN, OS_Watcher or OPDG then it&#8217;s time to check this note out! :)</p>
<div class="facebook_like_button"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.tanelpoder.com%2F2008%2F06%2F03%2Fperformance-tools-quick-reference-guide%2F&amp;layout=standard&amp;show-faces=true&amp;width=450&amp;action=like&amp;font=arial&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="padding: 0px 0px; border:none; overflow:hidden; width:450px; height:70px;"></iframe></div> <img src="http://blog.tanelpoder.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=73" width="1" height="1" style="display: none;" /><p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://blog.tanelpoder.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://blog.tanelpoder.com/2008/06/03/performance-tools-quick-reference-guide/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Future appearances</title>
		<link>http://blog.tanelpoder.com/2008/03/06/future-appearances/</link>
		<comments>http://blog.tanelpoder.com/2008/03/06/future-appearances/#comments</comments>
		<pubDate>Wed, 05 Mar 2008 21:09:21 +0000</pubDate>
		<dc:creator>Tanel Poder</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tanelpoder.wordpress.com/?p=64</guid>
		<description><![CDATA[In addition to Hotsos Symposium this week, I will deliver my Advanced Oracle Troubleshooting presentation and demos at NYOUG DBA SIG this Thursday (06. March 2008) in Oracle&#8217;s Park Avenue office in Manhattan, NYC. If you are interested, see the details at http://www.nyoug.org/upcoming_events.htm#dbaname Also, I will be speaking at Trivadis Performance Days in Zurich  23.-24. April 2008. [...]]]></description>
			<content:encoded><![CDATA[<p>In addition to Hotsos Symposium this week, I will deliver my Advanced Oracle Troubleshooting presentation and demos at NYOUG DBA SIG this Thursday (06. March 2008) in Oracle&#8217;s Park Avenue office in Manhattan, NYC. If you are interested, see the details at <a href="http://blog.tanelpoder.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5ueW91Zy5vcmcvdXBjb21pbmdfZXZlbnRzLmh0bSNkYmFuYW1l">http://www.nyoug.org/upcoming_events.htm#dbaname</a></p>
<p>Also, I will be speaking at Trivadis Performance Days in Zurich  23.-24. April 2008. I will deliver the following presentations/demos:</p>
<ul>
<li>
<div>Advanced Oracle Troubleshooting</div>
</li>
<li>
<div>Performance and Scalability Improvements in Oracle 10g and 11g</div>
</li>
</ul>
<p> If you are interested, visit this link:</p>
<p><a href="http://blog.tanelpoder.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly93d3cudHJpdmFkaXMuY29tL3Nob3AvS3Vyc2RldGFpbC5hc3B4P0thdGVnb3JpZUlEPTImYW1wO1N1YmthdGVnb3JpZUlEPTc4JmFtcDtLdXJzZUlEPTYwOA==">https://www.trivadis.com/shop/Kursdetail.aspx?KategorieID=2&amp;SubkategorieID=78&amp;KurseID=608</a></p>
<div class="facebook_like_button"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.tanelpoder.com%2F2008%2F03%2F06%2Ffuture-appearances%2F&amp;layout=standard&amp;show-faces=true&amp;width=450&amp;action=like&amp;font=arial&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="padding: 0px 0px; border:none; overflow:hidden; width:450px; height:70px;"></iframe></div> <img src="http://blog.tanelpoder.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=64" width="1" height="1" style="display: none;" /><p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://blog.tanelpoder.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://blog.tanelpoder.com/2008/03/06/future-appearances/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Cary Millsap is blogging</title>
		<link>http://blog.tanelpoder.com/2008/02/07/cary-millsap-is-blogging/</link>
		<comments>http://blog.tanelpoder.com/2008/02/07/cary-millsap-is-blogging/#comments</comments>
		<pubDate>Thu, 07 Feb 2008 11:05:52 +0000</pubDate>
		<dc:creator>Tanel Poder</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tanelpoder.wordpress.com/2008/02/07/cary-millsap-is-blogging/</guid>
		<description><![CDATA[If you work with Oracle databases and are interested in system performance, then you probably want to know what Cary Millsap has to say. So, make sure you bookmark his blog: http://carymillsap.blogspot.com/]]></description>
			<content:encoded><![CDATA[<p>If you work with Oracle databases and are interested in system performance, then you probably want to know what Cary Millsap has to say. So, make sure you bookmark his blog: <a href="http://blog.tanelpoder.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2NhcnltaWxsc2FwLmJsb2dzcG90LmNvbS8=" target=\"_blank\">http://carymillsap.blogspot.com/</a></p>
<div class="facebook_like_button"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.tanelpoder.com%2F2008%2F02%2F07%2Fcary-millsap-is-blogging%2F&amp;layout=standard&amp;show-faces=true&amp;width=450&amp;action=like&amp;font=arial&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="padding: 0px 0px; border:none; overflow:hidden; width:450px; height:70px;"></iframe></div> <img src="http://blog.tanelpoder.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=61" width="1" height="1" style="display: none;" /><p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://blog.tanelpoder.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://blog.tanelpoder.com/2008/02/07/cary-millsap-is-blogging/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Just a test posting&#8230;</title>
		<link>http://blog.tanelpoder.com/2007/06/17/18/</link>
		<comments>http://blog.tanelpoder.com/2007/06/17/18/#comments</comments>
		<pubDate>Sat, 16 Jun 2007 16:24:44 +0000</pubDate>
		<dc:creator>Tanel Poder</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tanelpoder.wordpress.com/2007/06/17/18/</guid>
		<description><![CDATA[This is a test posting, no real content here... -bash-3.00$ pstack 868 868: ora_pmon_SOL01 fffffd7ffc7dddca pollsys (63726c0, 2, fffffd7fffdfdc90, 0) fffffd7ffc7845c2 poll () + 52 0000000004eb8bd0 ntevpque () + 60 0000000004eb66e6 ntevque () + b6 0000000004e93968 nsevwait () + 178 0000000001905453 ksnwait () + 63 00000000017b0cc7 ksliwat () + 8a7 00000000017b1425 kslwaitns () + 15 [...]]]></description>
			<content:encoded><![CDATA[<p><code></p>
<pre>This is a test posting, no real content here...</pre>
<pre>
-bash-3.00$ pstack 868
868:    ora_pmon_SOL01
 fffffd7ffc7dddca pollsys  (63726c0, 2, fffffd7fffdfdc90, 0)
 fffffd7ffc7845c2 poll () + 52
 0000000004eb8bd0 ntevpque () + 60
 0000000004eb66e6 ntevque () + b6
 0000000004e93968 nsevwait () + 178
 0000000001905453 ksnwait () + 63
 00000000017b0cc7 ksliwat () + 8a7
 00000000017b1425 kslwaitns () + 15
 00000000018dd89f kskthbwt () + bf
 00000000017b13ed kslwait () + 4d
 00000000017ba502 ksuclnwt () + b2
 00000000017ba8f7 ksucln () + 327
 000000000184ecb5 ksbrdp () + 325
 00000000028d3dd6 opirip () + 2a6
 0000000000e76aea opidrv () + 3ba
 0000000000e73e7b sou2o () + 5b
 0000000000e3a86c opimai_real () + 11c
 0000000000e3a6a4 main () + 64
 0000000000e3a4ec ???????? ()</pre>
<p></code></p>
<div class="facebook_like_button"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.tanelpoder.com%2F2007%2F06%2F17%2F18%2F&amp;layout=standard&amp;show-faces=true&amp;width=450&amp;action=like&amp;font=arial&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="padding: 0px 0px; border:none; overflow:hidden; width:450px; height:70px;"></iframe></div> <img src="http://blog.tanelpoder.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=18" width="1" height="1" style="display: none;" /><p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://blog.tanelpoder.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://blog.tanelpoder.com/2007/06/17/18/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
