<?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>ora-solutions.net - Martin Decker &#187; HP-UX</title>
	<atom:link href="http://www.ora-solutions.net/web/category/unix/hp-ux-unix-2/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ora-solutions.net/web</link>
	<description>Indepented Oracle consultant</description>
	<lastBuildDate>Wed, 25 Jan 2012 14:04:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Grid Control 11g: Agent Metric Swap Utilization on HP-UX with Pseudo-Swap</title>
		<link>http://www.ora-solutions.net/web/2010/11/12/grid-control-11g-agent-metric-swap-utilization-on-hp-ux-with-pseudo-swap/</link>
		<comments>http://www.ora-solutions.net/web/2010/11/12/grid-control-11g-agent-metric-swap-utilization-on-hp-ux-with-pseudo-swap/#comments</comments>
		<pubDate>Fri, 12 Nov 2010 09:21:37 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[HP-UX]]></category>
		<category><![CDATA[Oracle Enterprise Manager]]></category>

		<guid isPermaLink="false">http://www.ora-solutions.net/web/?p=965</guid>
		<description><![CDATA[If you are running Grid Control on HP-UX and you are using pseudo-swap, then you have to add the property: NMUPM_USE_PSEUDO_MEM=TRUE to the emd.properties. Otherwise, Swap Utilization is calculated wrongly (higher than acutal) and it might trigger false alarms. How is the Grid Control Agent calculating Swap Utilization? In file $AGENT_HOME/sysman/admin/metadata/host.xml line 310 you find [...]]]></description>
			<content:encoded><![CDATA[<p>If you are running Grid Control on HP-UX and you are using pseudo-swap, then you have to add the property:</p>
<p>NMUPM_USE_PSEUDO_MEM=TRUE </p>
<p>to the emd.properties. Otherwise, Swap Utilization is calculated wrongly (higher than acutal) and it might trigger false alarms.</p>
<p>How is the Grid Control Agent calculating Swap Utilization?</p>
<p>In file $AGENT_HOME/sysman/admin/metadata/host.xml line 310 you find some answers:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>310
311
</pre></td><td class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ColumnDescriptor</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;swapUtil&quot;</span> <span style="color: #000066;">TYPE</span>=<span style="color: #ff0000;">&quot;NUMBER&quot;</span> <span style="color: #000066;">IS_KEY</span>=<span style="color: #ff0000;">&quot;FALSE&quot;</span> </span>
<span style="color: #009900;"><span style="color: #000066;">COMPUTE_EXPR</span>=<span style="color: #ff0000;">&quot;(100.0 * usedSwap / (usedSwap + freeSwap))&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span></pre></td></tr></table></div>

<p>In other parts, you find the definition of &#8220;usedSwap&#8221; and &#8220;freeSwap&#8221;.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>310
311
312
313
</pre></td><td class="code"><pre class="xml" style="font-family:monospace;"> <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ColumnDescriptor</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;usedSwap&quot;</span> <span style="color: #000066;">TYPE</span>=<span style="color: #ff0000;">&quot;NUMBER&quot;</span> <span style="color: #000066;">IS_KEY</span>=<span style="color: #ff0000;">&quot;FALSE&quot;</span> </span>
<span style="color: #009900;"><span style="color: #000066;">COMPUTE_EXPR</span>=<span style="color: #ff0000;">&quot;(usedSwapRaw / 1024.0)&quot;</span> <span style="color: #000066;">HELP</span>=<span style="color: #ff0000;">&quot;NO_HELP&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
 <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ColumnDescriptor</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;freeSwap&quot;</span> <span style="color: #000066;">TYPE</span>=<span style="color: #ff0000;">&quot;NUMBER&quot;</span> <span style="color: #000066;">IS_KEY</span>=<span style="color: #ff0000;">&quot;FALSE&quot;</span> </span>
<span style="color: #009900;"><span style="color: #000066;">COMPUTE_EXPR</span>=<span style="color: #ff0000;">&quot;(freeSwapRaw / 1024.0)&quot;</span> <span style="color: #000066;">HELP</span>=<span style="color: #ff0000;">&quot;NO_HELP&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span></pre></td></tr></table></div>

<p>Now, we have to find &#8220;usedSwapRaw&#8221; and &#8220;freeSwapRaw&#8221;. In a different part (line 387) of this file, you see this section:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>387
388
389
390
391
392
393
394
395
396
397
398
399
</pre></td><td class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;GetView</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;LoadInternalView&quot;</span> <span style="color: #000066;">FROM_TABLE</span>=<span style="color: #ff0000;">&quot;_LoadInternal&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Column</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;cpuLoad_1min&quot;</span> <span style="color: #000066;">COLUMN_NAME</span>=<span style="color: #ff0000;">&quot;cpuLoad_1min&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Column</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;cpuLoad&quot;</span> <span style="color: #000066;">COLUMN_NAME</span>=<span style="color: #ff0000;">&quot;cpuLoad&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Column</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;cpuLoad_15min&quot;</span> <span style="color: #000066;">COLUMN_NAME</span>=<span style="color: #ff0000;">&quot;cpuLoad_15min&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Column</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;pgScan&quot;</span> <span style="color: #000066;">COLUMN_NAME</span>=<span style="color: #ff0000;">&quot;pgScan&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Column</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;noOfProcs&quot;</span> <span style="color: #000066;">COLUMN_NAME</span>=<span style="color: #ff0000;">&quot;noOfProcs&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Column</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;transfers&quot;</span> <span style="color: #000066;">COLUMN_NAME</span>=<span style="color: #ff0000;">&quot;transfers&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Column</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;pageSize&quot;</span> <span style="color: #000066;">COLUMN_NAME</span>=<span style="color: #ff0000;">&quot;pageSize&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Column</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;realMem&quot;</span> <span style="color: #000066;">COLUMN_NAME</span>=<span style="color: #ff0000;">&quot;realMem&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Column</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;freeMemRaw&quot;</span> <span style="color: #000066;">COLUMN_NAME</span>=<span style="color: #ff0000;">&quot;freeMemRaw&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Column</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;usedSwapRaw&quot;</span> <span style="color: #000066;">COLUMN_NAME</span>=<span style="color: #ff0000;">&quot;usedSwapRaw&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Column</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;freeSwapRaw&quot;</span> <span style="color: #000066;">COLUMN_NAME</span>=<span style="color: #ff0000;">&quot;freeSwapRaw&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/GetView<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>In the &#8220;Metric&#8221; XML Tag for  <strong>Metric NAME=&#8221;_LoadInternal&#8221;</strong>, you find the QueryDescriptor:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>620
621
622
623
624
625
626
627
628
629
</pre></td><td class="code"><pre class="xml" style="font-family:monospace;"> <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;QueryDescriptor</span> <span style="color: #000066;">FETCHLET_ID</span>=<span style="color: #ff0000;">&quot;OSLineToken&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Property</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;NMUPM_USE_PSEUDO_MEM&quot;</span> <span style="color: #000066;">SCOPE</span>=<span style="color: #ff0000;">&quot;INSTANCE&quot;</span> <span style="color: #000066;">OPTIONAL</span>=<span style="color: #ff0000;">&quot;TRUE&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>NMUPM_USE_PSEUDO_MEM<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Property</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;ENVNMUPM_USE_PSEUDO_MEM&quot;</span> <span style="color: #000066;">SCOPE</span>=<span style="color: #ff0000;">&quot;GLOBAL&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>%NMUPM_USE_PSEUDO_MEM%<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Property</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;emdRoot&quot;</span> <span style="color: #000066;">SCOPE</span>=<span style="color: #ff0000;">&quot;SYSTEMGLOBAL&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>emdRoot<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Property</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;command&quot;</span> <span style="color: #000066;">SCOPE</span>=<span style="color: #ff0000;">&quot;GLOBAL&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span> %emdRoot%/bin/nmupm <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Property</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;args&quot;</span> <span style="color: #000066;">SCOPE</span>=<span style="color: #ff0000;">&quot;GLOBAL&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>osLoad<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Property</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;startsWith&quot;</span> <span style="color: #000066;">SCOPE</span>=<span style="color: #ff0000;">&quot;GLOBAL&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>em_result=<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Property</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;delimiter&quot;</span> <span style="color: #000066;">SCOPE</span>=<span style="color: #ff0000;">&quot;GLOBAL&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>|<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Property</span> <span style="color: #000066;">NAME</span>=<span style="color: #ff0000;">&quot;ENVNMUPM_TIMEOUT&quot;</span> <span style="color: #000066;">OPTIONAL</span>=<span style="color: #ff0000;">&quot;TRUE&quot;</span> <span style="color: #000066;">SCOPE</span>=<span style="color: #ff0000;">&quot;SYSTEMGLOBAL&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>NMUPM_TIMEOUT<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/QueryDescriptor<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>So, now we know that the agent executes &#8220;nmupm osLoad&#8221;. Let´s try it.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">$ nmupm osLoad
<span style="color: #007800;">ncpus</span>=<span style="color: #000000;">8</span>
<span style="color: #007800;">em_result</span>=<span style="color: #000000;">4.10</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">2.43</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">4.46</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">500038168.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">987</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">3</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">0.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">4096.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">40775544.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">10464849920.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">41094647808.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">21731692544.000000</span></pre></td></tr></table></div>

<p>The result is pipe seperated and consists of the columns from above. The last two are used &#8220;usedSwapRaw&#8221; and &#8220;freeSwapRaw&#8221;. </p>
<p>Please note that you will get different results depending on the value of the environment variable &#8220;NMUPM_USE_PSEUDO_MEM&#8221;.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">bash</span>$ <span style="color: #007800;">NMUPM_USE_PSEUDO_MEM</span>=FALSE nmupm osLoad
<span style="color: #007800;">ncpus</span>=<span style="color: #000000;">8</span>
<span style="color: #007800;">em_result</span>=<span style="color: #000000;">0.86</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">1.84</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">3.89</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">501596312.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">986</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">3</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">0.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">4096.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">40775544.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">10436485120.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">21024821248.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">47362048.000000</span>
<span style="color: #c20cb9; font-weight: bold;">bash</span>$ <span style="color: #007800;">NMUPM_USE_PSEUDO_MEM</span>=TRUE nmupm osLoad
<span style="color: #007800;">ncpus</span>=<span style="color: #000000;">8</span>
<span style="color: #007800;">em_result</span>=<span style="color: #000000;">0.90</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">1.83</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">3.88</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">501596312.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">989</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">3</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">0.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">4096.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">40775544.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">10432708608.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">41164206080.000000</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #000000;">21662134272.000000</span></pre></td></tr></table></div>

<p><strong>Summary</strong></p>
<p>If you are getting warning/critical alerts about Swap Utilization, check with glance or &#8220;swapinfo -t&#8221; to verify if pseudo-swap is used. If it is, set the property and it will fix the metric error.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ora-solutions.net/web/2010/11/12/grid-control-11g-agent-metric-swap-utilization-on-hp-ux-with-pseudo-swap/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Session waiting for &#8220;enq: RO &#8211; fast object reuse&#8221; &#8211; DBWR Process spinning on CPU</title>
		<link>http://www.ora-solutions.net/web/2009/01/20/session-waiting-for-enq-ro-fast-object-reuse-dbwr-process-spinning-on-cpu/</link>
		<comments>http://www.ora-solutions.net/web/2009/01/20/session-waiting-for-enq-ro-fast-object-reuse-dbwr-process-spinning-on-cpu/#comments</comments>
		<pubDate>Tue, 20 Jan 2009 16:07:08 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[10g]]></category>
		<category><![CDATA[Bugs]]></category>
		<category><![CDATA[HP-UX]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Linux Itanium]]></category>
		<category><![CDATA[MetaLink]]></category>
		<category><![CDATA[Oracle Database]]></category>
		<category><![CDATA[Solaris]]></category>
		<category><![CDATA[Unix]]></category>

		<guid isPermaLink="false">http://www.ora-solutions.net/web/?p=564</guid>
		<description><![CDATA[I have encountered the following problem on a 10.2.0.4 database on Linux x86_64 today: A user session has been waiting for &#8220;enq: RO &#8211; fast object reuse&#8221; for almost 60 minutes while executing a &#8220;truncate table&#8221; SQL statement. SQL> select username, event, sql_id, taddr, last_call_et from v$session where sid = 234; USERNAME EVENT SQL_ID TADDR [...]]]></description>
			<content:encoded><![CDATA[<p>I have encountered the following problem on a 10.2.0.4 database on Linux x86_64 today:<br />
A user session has been waiting for &#8220;enq: RO &#8211; fast object reuse&#8221; for almost 60 minutes while executing a &#8220;truncate table&#8221; SQL statement.</p>
<blockquote><p>SQL>  select username, event, sql_id, taddr, last_call_et from v$session where sid = 234;</p>
<p>USERNAME    EVENT                         SQL_ID        TADDR            LAST_CALL_ET<br />
&#8212;&#8212;&#8212;-  &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;&#8212;<br />
MD          enq: RO &#8211; fast object reuse   ljk299jlkj003 0000000153264570 3542</p>
<p>SQL>  select sql_text from v$sqlstats where sql_id = &#8216;ljk299jlkj003&#8242;;</p>
<p>SQL_TEXT<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
truncate table tab1</p></blockquote>
<p>The Session was blocked by the CKPT process:</p>
<blockquote><p>SQL> select * from dba_waiters;</p>
<p>WAITING_SESSION HOLDING_SESSION LOCK_TYPE                  MODE_HELD                                MODE_REQUESTED                  LOCK_ID1   LOCK_ID2<br />
&#8212;&#8212;&#8212;&#8212;&#8212; &#8212;&#8212;&#8212;&#8212;&#8212; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;-<br />
            234             423 RO                         Row-S (SS)                               Exclusive                  65573   1</p>
<p>SQL> select sid, serial#, sql_id, last_call_et, machine, program, username from v$session where sid = 423;</p>
<p>       SID    SERIAL# SQL_ID        LAST_CALL_ET MACHINE          PROGRAM<br />
&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;&#8212; &#8212;&#8212;&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
       423          1                4133636     ora-vm1.intra    oracle@ora-vm1.intra (CKPT)
</p></blockquote>
<p>The checkpoint process was waiting for database writer DBWR process, which was spinning on one cpu:</p>
<p>top</p>
<blockquote><p> PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND<br />
10712 oracle    25   0 2201m 1.7g 1.7g R 99.5 21.7 108:18.03 oracle</p></blockquote>
<p>PID 10712 maps to DBW0:</p>
<blockquote><p>[oracle@ora-vm1 ]$ ps -ef|grep 10712<br />
oracle   10712     1  0  2008 ?        03:23:05 ora_dbw0_MDDB01
</p></blockquote>
<p>mpstat</p>
<blockquote><p>Linux 2.6.9-78.ELsmp (ora-vm1.intra)        01/20/2009</p>
<p>02:21:56 PM  CPU   %user   %nice %system %iowait    %irq   %soft   %idle    intr/s<br />
02:21:57 PM  all   49.75    0.00    0.00    0.00    0.00    0.00   50.25   1055.00<br />
02:21:57 PM    0    0.00    0.00    0.00    0.00    0.00    0.00  100.00   1006.00<br />
02:21:57 PM    1  100.00    0.00    0.00    0.00    0.00    0.00    0.00     49.00</p>
<p>02:21:57 PM  CPU   %user   %nice %system %iowait    %irq   %soft   %idle    intr/s<br />
02:21:58 PM  all   50.75    0.00    0.00    0.50    0.00    0.00   48.76   1161.00<br />
02:21:58 PM    0    1.00    0.00    0.00    1.00    0.00    0.00   98.00   1087.00<br />
02:21:58 PM    1  100.00    0.00    0.00    0.00    0.00    0.00    0.00     74.00
</p></blockquote>
<p>The stack of dbw0 during the time showed these signatures:</p>
<blockquote><p>[oracle@ora-vm1 oracle]$ pstack 10712<br />
#0  0x000000000074b7fb in kslfre ()<br />
#1  0x00000000010ccc3b in kcbo_exam_buf ()<br />
#2  0x00000000010d0d62 in kcbo_service_ockpt ()<br />
#3  0x0000000001080cd7 in kcbbdrv ()<br />
#4  0x00000000007ddcc2 in ksbabs ()<br />
#5  0x00000000007e4b32 in ksbrdp ()<br />
#6  0x0000000002efcb50 in opirip ()<br />
#7  0x00000000012da326 in opidrv ()<br />
#8  0x0000000001e62456 in sou2o ()<br />
#9  0x00000000006d2555 in opimai_real ()<br />
#10 0x00000000006d240c in main ()<br />
[oracle@ora-vm1 oracle]$ pstack 10712<br />
#0  0x000000000074b36d in kslfre ()<br />
#1  0x00000000010cc203 in kcbo_write_process ()<br />
#2  0x00000000010ce608 in kcbo_write_q ()<br />
#3  0x0000000001080a6d in kcbbdrv ()<br />
#4  0x00000000007ddcc2 in ksbabs ()<br />
#5  0x00000000007e4b32 in ksbrdp ()<br />
#6  0x0000000002efcb50 in opirip ()<br />
#7  0x00000000012da326 in opidrv ()<br />
#8  0x0000000001e62456 in sou2o ()<br />
#9  0x00000000006d2555 in opimai_real ()<br />
#10 0x00000000006d240c in main ()<br />
[oracle@ora-vm1 oracle]$ pstack 10712<br />
#0  0x00000000010ccb60 in kcbo_exam_buf ()<br />
#1  0x00000000010d0d62 in kcbo_service_ockpt ()<br />
#2  0x0000000001080cd7 in kcbbdrv ()<br />
#3  0x00000000007ddcc2 in ksbabs ()<br />
#4  0x00000000007e4b32 in ksbrdp ()<br />
#5  0x0000000002efcb50 in opirip ()<br />
#6  0x00000000012da326 in opidrv ()<br />
#7  0x0000000001e62456 in sou2o ()<br />
#8  0x00000000006d2555 in opimai_real ()<br />
#9  0x00000000006d240c in main ()<br />
[oracle@ora-vm1 oracle]$ pstack 10712<br />
#0  0x00000000010d0da5 in kcbo_service_ockpt ()<br />
#1  0x0000000001080cd7 in kcbbdrv ()<br />
#2  0x00000000007ddcc2 in ksbabs ()<br />
#3  0x00000000007e4b32 in ksbrdp ()<br />
#4  0x0000000002efcb50 in opirip ()<br />
#5  0x00000000012da326 in opidrv ()<br />
#6  0x0000000001e62456 in sou2o ()<br />
#7  0x00000000006d2555 in opimai_real ()<br />
#8  0x00000000006d240c in main ()</p></blockquote>
<p>A MetaLink Research for the term &#8220;kcbo_service_ockpt&#8221; leads to Bug 7376934, which is a duplicate of Bug 7385253 &#8211; DBWR IS CONSUMING HIGH CPU. </p>
<p>Patch 7385253 is available for Linux x86_64, HP-UX, Solaris, AIX.<br />
Reference:<br />
MetaLink Note 762085.1 &#8211; Subject: 	&#8216;enq: RO &#8211; fast object reuse&#8217; contention when gathering schema/table statistics in parallel</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ora-solutions.net/web/2009/01/20/session-waiting-for-enq-ro-fast-object-reuse-dbwr-process-spinning-on-cpu/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>NUMA enabled in 10.2.0.4</title>
		<link>http://www.ora-solutions.net/web/2008/12/18/numa-enabled-in-10204/</link>
		<comments>http://www.ora-solutions.net/web/2008/12/18/numa-enabled-in-10204/#comments</comments>
		<pubDate>Thu, 18 Dec 2008 11:33:59 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[10g]]></category>
		<category><![CDATA[HP-UX]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Linux Itanium]]></category>
		<category><![CDATA[MetaLink]]></category>
		<category><![CDATA[Oracle Database]]></category>
		<category><![CDATA[Solaris]]></category>
		<category><![CDATA[Unix]]></category>

		<guid isPermaLink="false">http://www.ora-solutions.net/web/?p=515</guid>
		<description><![CDATA[When upgrading from pre 10.2.0.4 to 10.2.0.4, Oracle enables NUMA support. This has the effect that there can be multiple shared memory segments (MetaLink Note: 429872.1) although shmmax/shmall are set to high values. I have read MetaLink Notes (7171446.8, 6730567.8, 6689903.8) and this blog entry, where a customer had problems on HP-UX with the default [...]]]></description>
			<content:encoded><![CDATA[<p>When upgrading from pre 10.2.0.4 to 10.2.0.4, Oracle enables NUMA support. This has the effect that there can be multiple shared memory segments (MetaLink Note: 429872.1) although shmmax/shmall are set to high values.</p>
<p>I have read MetaLink Notes (7171446.8, 6730567.8, 6689903.8) and this <a href="http://skrajend.blogspot.com/2008/09/numa-after-10204-upgrade-is.html">blog entry</a>, where a customer had problems on HP-UX with the default NUMA settings. </p>
<p>Better than that, it can also lead to instance crashes in 10.2.0.4 as reported in MetaLink Note 743191.1. Good news is that there is a patch available for Linux x86_64/10.2.0.4.</p>
<p>I have asked Oracle Support whether it is safe to leave NUMA enabled for Linux Itanium, but they would not comment on it. Instead they asked me to check with the OS vendor. Great. ;-(</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ora-solutions.net/web/2008/12/18/numa-enabled-in-10204/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Optimal VxFS Settings for Oracle Filesystems?</title>
		<link>http://www.ora-solutions.net/web/2008/10/10/optimal-vxfs-settings-for-oracle-filesystems/</link>
		<comments>http://www.ora-solutions.net/web/2008/10/10/optimal-vxfs-settings-for-oracle-filesystems/#comments</comments>
		<pubDate>Fri, 10 Oct 2008 10:24:02 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[HP-UX]]></category>
		<category><![CDATA[Oracle Database]]></category>
		<category><![CDATA[Unix]]></category>

		<guid isPermaLink="false">http://www.ora-solutions.net/web/?p=321</guid>
		<description><![CDATA[I found a funny presentation about Oracle filesystem stuff. It explains inode locking: Oracle Filesystems A friend has pointed me to a very informative document from HP about the optimal settings of vxfs (HP OnlineJFS) filesystem-related parameters for Oracle: HP-UX JFS mount options for Oracle Database environments]]></description>
			<content:encoded><![CDATA[<p>I found a funny presentation about Oracle filesystem stuff. It explains inode locking: <a href="http://idisk.mac.com/tikimac-Public/technotes/Oracle%20Filesystems.pdf?disposition=download+2969">Oracle Filesystems</a></p>
<p>A friend has pointed me to a very informative document from HP about the optimal settings of vxfs (HP OnlineJFS) filesystem-related parameters for Oracle: <a href="http://h71019.www7.hp.com/ERC/downloads/4AA1-9839ENW.pdf">HP-UX JFS mount options for Oracle Database environments</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ora-solutions.net/web/2008/10/10/optimal-vxfs-settings-for-oracle-filesystems/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Filesystem IO Monitoring with HP-UX Glance</title>
		<link>http://www.ora-solutions.net/web/2008/08/25/filesystem-io-monitoring-with-hp-ux-glance/</link>
		<comments>http://www.ora-solutions.net/web/2008/08/25/filesystem-io-monitoring-with-hp-ux-glance/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 11:13:46 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[HP-UX]]></category>
		<category><![CDATA[Unix]]></category>

		<guid isPermaLink="false">http://192.168.0.91/?p=26</guid>
		<description><![CDATA[On HP-UX, you can use glance to collect a huge range of OS Statistics and write them in a defined time interval into a file for later analysis. A collection of available metrics is available on the system in /opt/perf/paperdocs/gp/C/metrics.txt or /opt/perf/paperdocs/gp/C/metrics.pdf. This is an example of IO Monitoring for Filesytems: glance_filesystem.sh: nohup glance -aos [...]]]></description>
			<content:encoded><![CDATA[<p>On HP-UX, you can use glance to collect a huge range of OS Statistics and write them in a defined time interval into a file for later analysis. A collection of available metrics is available on the system in /opt/perf/paperdocs/gp/C/metrics.txt or /opt/perf/paperdocs/gp/C/metrics.pdf.</p>
<p><strong>This is an example of IO Monitoring for Filesytems:</strong></p>
<p><strong>glance_filesystem.sh:</strong></p>
<pre>nohup glance -aos ./filesystem_advisor.conf -j 60 &gt; glance_output_filesystem_$$.txt 2&gt;/dev/null &amp;</pre>
<p><strong>filesystem_advisor.conf:</strong></p>
<blockquote><p><code>headersprinted=headersprinted<br />
if headersprinted != 1 then {<br />
print "DATE       TIME     FILESYSTEM                   FIR     LIR     LRBR     LRR     LWBR      LWR     PIR     PRBR     PRR     PWBR     PWR"<br />
headersprinted = 1<br />
}<br />
filesystem loop<br />
{<br />
print GBL_STATDATE|12," ",<br />
GBL_STATTIME|9," ",<br />
FS_DIRNAME|24,<br />
FS_FILE_IO_RATE|8,<br />
FS_LOGL_IO_RATE|8,<br />
FS_LOGL_READ_BYTE_RATE|9,<br />
FS_LOGL_READ_RATE|8,<br />
FS_LOGL_WRITE_BYTE_RATE|9,<br />
FS_LOGL_WRITE_RATE|8,<br />
FS_PHYS_IO_RATE|8,<br />
FS_PHYS_READ_BYTE_RATE|9,<br />
FS_PHYS_READ_RATE|8,<br />
FS_PHYS_WRITE_BYTE_RATE|9,<br />
FS_PHYS_WRITE_RATE|8<br />
}</code></p></blockquote>
<p>Used Metrics:</p>
<p><strong>FS_FILE_IO_RATE (FIR)</strong></p>
<p>The number of file system related physical IOs per second directed to this file system during the interval. This value is similar to the values returned by the vmstat -d command except that vmstat reports all IOs and does not break them out by file system. Also, vmstat reports IOs from the kernel&#8217;s view, which may get broken down by the disk driver into multiple physical IOs. Since this metric reports values from the disk driver&#8217;s point of view, it is more accurate than vmstat.</p>
<p><strong>FS_LOGL_IO_RATE (LIR)</strong></p>
<p>The number of logical IOs per second directed to this file system during the interval. Logical IOs are generated by calling the read() or write() system calls.</p>
<p><strong>FS_LOGL_READ_BYTE_RATE (LRBR)</strong></p>
<p>The number of logical read KBs per second from this file system during the interval.</p>
<p><strong>FS_LOGL_READ_RATE (LRR)</strong></p>
<p>The number of logical reads per second directed to this file system during the interval. Logical reads are generated by calling the read() system call.</p>
<p><strong>FS_LOGL_WRITE_BYTE_RATE (LWBR)</strong></p>
<p>The number of logical writes KBs per second to this file system during the interval.</p>
<p><strong>FS_LOGL_WRITE_RATE (LWR)</strong></p>
<p>The number of logical writes per second directed to this file system during the interval. Logical writes are generated by calling the write() system call.</p>
<p><strong>FS_PHYS_IO_RATE (PIR)</strong></p>
<p>The number of physical IOs per second directed to this file system during the interval.</p>
<p><strong>FS_PHYS_READ_BYTE_RATE (PRBR)</strong></p>
<p>The number of physical KBs per second read from this file system during the interval.</p>
<p><strong>FS_PHYS_READ_RATE (PRR)</strong></p>
<p>The number of physical reads per second directed to this file system during the interval. On Unix systems, physical reads are generated by user file access, virtual memory access (paging), file system management, or raw device access.</p>
<p><strong>FS_PHYS_WRITE_BYTE_RATE (PWBR)</strong></p>
<p>The number of physical KBs per second written to this file system during the interval.</p>
<p><strong>FS_PHYS_WRITE_RATE (PWR)</strong></p>
<p>The number of physical writes per second directed to this file system during the interval.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ora-solutions.net/web/2008/08/25/filesystem-io-monitoring-with-hp-ux-glance/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

