<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Open Cursor Leaks &#8211; Identifying the Problem</title>
	<atom:link href="http://hoopercharles.wordpress.com/2010/02/03/open-cursor-leaks-identifying-the-problem/feed/" rel="self" type="application/rss+xml" />
	<link>http://hoopercharles.wordpress.com/2010/02/03/open-cursor-leaks-identifying-the-problem/</link>
	<description>Miscellaneous Random Oracle Topics: Stop, Think, ... Understand</description>
	<lastBuildDate>Thu, 23 May 2013 04:02:42 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Charles Hooper</title>
		<link>http://hoopercharles.wordpress.com/2010/02/03/open-cursor-leaks-identifying-the-problem/#comment-392</link>
		<dc:creator><![CDATA[Charles Hooper]]></dc:creator>
		<pubDate>Thu, 18 Feb 2010 13:05:37 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1129#comment-392</guid>
		<description><![CDATA[Anand,

I will try to answer your question - if anyone else reading this blog has a better suggestion, please offer that suggestion.

You could just query V$SESSTAT, something like this (&lt;a href=&quot;http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/memory.htm&quot; rel=&quot;nofollow&quot;&gt;see the documentation&lt;/a&gt;):
[code]
SELECT
  S.USERNAME,
  S.PROGRAM,
  S.STATUS,
  SS.SID,
  SN.NAME,
  SS.VALUE
FROM
  V$STATNAME SN,
  V$SESSTAT SS,
  V$SESSION S
WHERE
  SS.STATISTIC#=SN.STATISTIC#
  AND SN.NAME=&#039;session pga memory&#039;
  AND SS.SID=S.SID
ORDER BY
  SS.VALUE DESC,
  SS.SID;
[/code]

If you are running Oracle 10.2.0.1 or higher, you could query &lt;a href=&quot;http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/dynviews_2023.htm&quot; rel=&quot;nofollow&quot;&gt;V$PROCESS_MEMORY&lt;/a&gt;, something like this:
[code]
SELECT
  P.PID,
  P.SPID,
  P.PROGRAM,
  S.PROGRAM,
  S.USERNAME,
  S.SID,
  P.PGA_USED_MEM,
  P.PGA_ALLOC_MEM,
  P.PGA_FREEABLE_MEM,
  P.PGA_MAX_MEM,
  PM.SQL_ALLOCATED,
  PM.SQL_USED,
  PM.SQL_MAX_ALLOCATED,
  PM.PLSQL_ALLOCATED,
  PM.PLSQL_USED,
  PM.PLSQL_MAX_ALLOCATED,
  PM.OLAP_ALLOCATED,
  PM.OLAP_USED,
  PM.OLAP_MAX_ALLOCATED,
  PM.JAVA_ALLOCATED,
  PM.JAVA_USED,
  PM.JAVA_MAX_ALLOCATED,
  PM.OTHER_ALLOCATED,
  PM.OTHER_USED,
  PM.OTHER_MAX_ALLOCATED,
  PM.FREEABLE_ALLOCATED
FROM
  V$PROCESS P,
  V$SESSION S,
  (SELECT
    PID,
    SERIAL#,
    MAX(DECODE(CATEGORY,&#039;SQL&#039;,ALLOCATED,0)) SQL_ALLOCATED,
    MAX(DECODE(CATEGORY,&#039;SQL&#039;,USED,0)) SQL_USED,
    MAX(DECODE(CATEGORY,&#039;SQL&#039;,MAX_ALLOCATED,0)) SQL_MAX_ALLOCATED,
    MAX(DECODE(CATEGORY,&#039;PL/SQL&#039;,ALLOCATED,0)) PLSQL_ALLOCATED,
    MAX(DECODE(CATEGORY,&#039;PL/SQL&#039;,USED,0)) PLSQL_USED,
    MAX(DECODE(CATEGORY,&#039;PL/SQL&#039;,MAX_ALLOCATED,0)) PLSQL_MAX_ALLOCATED,
    MAX(DECODE(CATEGORY,&#039;OLAP&#039;,ALLOCATED,0)) OLAP_ALLOCATED,
    MAX(DECODE(CATEGORY,&#039;OLAP&#039;,USED,0)) OLAP_USED,
    MAX(DECODE(CATEGORY,&#039;OLAP&#039;,MAX_ALLOCATED,0)) OLAP_MAX_ALLOCATED,
    MAX(DECODE(CATEGORY,&#039;JAVA&#039;,ALLOCATED,0)) JAVA_ALLOCATED,
    MAX(DECODE(CATEGORY,&#039;JAVA&#039;,USED,0)) JAVA_USED,
    MAX(DECODE(CATEGORY,&#039;JAVA&#039;,MAX_ALLOCATED,0)) JAVA_MAX_ALLOCATED,
    MAX(DECODE(CATEGORY,&#039;Other&#039;,ALLOCATED,0)) OTHER_ALLOCATED,
    MAX(DECODE(CATEGORY,&#039;Other&#039;,USED,0)) OTHER_USED,
    MAX(DECODE(CATEGORY,&#039;Other&#039;,MAX_ALLOCATED,0)) OTHER_MAX_ALLOCATED,
    MAX(DECODE(CATEGORY,&#039;Freeable&#039;,ALLOCATED,0)) FREEABLE_ALLOCATED
  FROM
    V$PROCESS_MEMORY
  GROUP BY
    PID,
    SERIAL#) PM
WHERE
  P.ADDR=S.PADDR(+)
  AND P.PID=PM.PID
  AND P.SERIAL#=PM.SERIAL#
ORDER BY
  PGA_ALLOC_MEM DESC;
[/code]

The above showed that I have an inactive session that has 10,915,985 bytes of memory allocated, with 2,264,137 bytes that are in use, 720,896 bytes are freeable, and the maximum amount of memory used by the session was 53,776,529 bytes.  The &quot;Other&quot; allocated is currently at 9,994,145 bytes (of the 10,915,985 bytes).

If the above information was not enough for me, I could turn to page 268 in the Expert Oracle Practices book (chapter 8 written by Randolf Geist and myself) and dump the PGA and UGA memory contents to a trace file, like this (in SQL*Plus, connected as SYS, 34 is the PID of the session that is inactive):
[code]
ORADEBUG SETORAPID 34
ORADEBUG UNLIMIT
ORADEBUG DUMP HEAPDUMP 5
ORADEBUG CLOSE_TRACE
[/code]

More information about ORADEBUG dumps is available on &lt;a href=&quot;http://www.juliandyke.com/Diagnostics/Dumps/Dumps.html&quot; rel=&quot;nofollow&quot;&gt;Julian Dyke&#039;s website&lt;/a&gt;.]]></description>
		<content:encoded><![CDATA[<p>Anand,</p>
<p>I will try to answer your question &#8211; if anyone else reading this blog has a better suggestion, please offer that suggestion.</p>
<p>You could just query V$SESSTAT, something like this (<a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/memory.htm" rel="nofollow">see the documentation</a>):</p>
<pre class="brush: plain; title: ; notranslate">
SELECT
  S.USERNAME,
  S.PROGRAM,
  S.STATUS,
  SS.SID,
  SN.NAME,
  SS.VALUE
FROM
  V$STATNAME SN,
  V$SESSTAT SS,
  V$SESSION S
WHERE
  SS.STATISTIC#=SN.STATISTIC#
  AND SN.NAME='session pga memory'
  AND SS.SID=S.SID
ORDER BY
  SS.VALUE DESC,
  SS.SID;
</pre>
<p>If you are running Oracle 10.2.0.1 or higher, you could query <a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/dynviews_2023.htm" rel="nofollow">V$PROCESS_MEMORY</a>, something like this:</p>
<pre class="brush: plain; title: ; notranslate">
SELECT
  P.PID,
  P.SPID,
  P.PROGRAM,
  S.PROGRAM,
  S.USERNAME,
  S.SID,
  P.PGA_USED_MEM,
  P.PGA_ALLOC_MEM,
  P.PGA_FREEABLE_MEM,
  P.PGA_MAX_MEM,
  PM.SQL_ALLOCATED,
  PM.SQL_USED,
  PM.SQL_MAX_ALLOCATED,
  PM.PLSQL_ALLOCATED,
  PM.PLSQL_USED,
  PM.PLSQL_MAX_ALLOCATED,
  PM.OLAP_ALLOCATED,
  PM.OLAP_USED,
  PM.OLAP_MAX_ALLOCATED,
  PM.JAVA_ALLOCATED,
  PM.JAVA_USED,
  PM.JAVA_MAX_ALLOCATED,
  PM.OTHER_ALLOCATED,
  PM.OTHER_USED,
  PM.OTHER_MAX_ALLOCATED,
  PM.FREEABLE_ALLOCATED
FROM
  V$PROCESS P,
  V$SESSION S,
  (SELECT
    PID,
    SERIAL#,
    MAX(DECODE(CATEGORY,'SQL',ALLOCATED,0)) SQL_ALLOCATED,
    MAX(DECODE(CATEGORY,'SQL',USED,0)) SQL_USED,
    MAX(DECODE(CATEGORY,'SQL',MAX_ALLOCATED,0)) SQL_MAX_ALLOCATED,
    MAX(DECODE(CATEGORY,'PL/SQL',ALLOCATED,0)) PLSQL_ALLOCATED,
    MAX(DECODE(CATEGORY,'PL/SQL',USED,0)) PLSQL_USED,
    MAX(DECODE(CATEGORY,'PL/SQL',MAX_ALLOCATED,0)) PLSQL_MAX_ALLOCATED,
    MAX(DECODE(CATEGORY,'OLAP',ALLOCATED,0)) OLAP_ALLOCATED,
    MAX(DECODE(CATEGORY,'OLAP',USED,0)) OLAP_USED,
    MAX(DECODE(CATEGORY,'OLAP',MAX_ALLOCATED,0)) OLAP_MAX_ALLOCATED,
    MAX(DECODE(CATEGORY,'JAVA',ALLOCATED,0)) JAVA_ALLOCATED,
    MAX(DECODE(CATEGORY,'JAVA',USED,0)) JAVA_USED,
    MAX(DECODE(CATEGORY,'JAVA',MAX_ALLOCATED,0)) JAVA_MAX_ALLOCATED,
    MAX(DECODE(CATEGORY,'Other',ALLOCATED,0)) OTHER_ALLOCATED,
    MAX(DECODE(CATEGORY,'Other',USED,0)) OTHER_USED,
    MAX(DECODE(CATEGORY,'Other',MAX_ALLOCATED,0)) OTHER_MAX_ALLOCATED,
    MAX(DECODE(CATEGORY,'Freeable',ALLOCATED,0)) FREEABLE_ALLOCATED
  FROM
    V$PROCESS_MEMORY
  GROUP BY
    PID,
    SERIAL#) PM
WHERE
  P.ADDR=S.PADDR(+)
  AND P.PID=PM.PID
  AND P.SERIAL#=PM.SERIAL#
ORDER BY
  PGA_ALLOC_MEM DESC;
</pre>
<p>The above showed that I have an inactive session that has 10,915,985 bytes of memory allocated, with 2,264,137 bytes that are in use, 720,896 bytes are freeable, and the maximum amount of memory used by the session was 53,776,529 bytes.  The &#8220;Other&#8221; allocated is currently at 9,994,145 bytes (of the 10,915,985 bytes).</p>
<p>If the above information was not enough for me, I could turn to page 268 in the Expert Oracle Practices book (chapter 8 written by Randolf Geist and myself) and dump the PGA and UGA memory contents to a trace file, like this (in SQL*Plus, connected as SYS, 34 is the PID of the session that is inactive):</p>
<pre class="brush: plain; title: ; notranslate">
ORADEBUG SETORAPID 34
ORADEBUG UNLIMIT
ORADEBUG DUMP HEAPDUMP 5
ORADEBUG CLOSE_TRACE
</pre>
<p>More information about ORADEBUG dumps is available on <a href="http://www.juliandyke.com/Diagnostics/Dumps/Dumps.html" rel="nofollow">Julian Dyke&#8217;s website</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anand</title>
		<link>http://hoopercharles.wordpress.com/2010/02/03/open-cursor-leaks-identifying-the-problem/#comment-391</link>
		<dc:creator><![CDATA[Anand]]></dc:creator>
		<pubDate>Thu, 18 Feb 2010 04:49:06 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1129#comment-391</guid>
		<description><![CDATA[Hi Charles,
  I am having a solaris box.In TOP(unix), i am getting RES (Resident Size) as 1124M ,1170M..etc for PIDs.When i check for the sessions belonging to PIDs they are for the application sessions which are INACTIVE but connected.How do i confirm that the these sessions are holding server&#039;s memory and the reason for the same?

Regards,
Anand]]></description>
		<content:encoded><![CDATA[<p>Hi Charles,<br />
  I am having a solaris box.In TOP(unix), i am getting RES (Resident Size) as 1124M ,1170M..etc for PIDs.When i check for the sessions belonging to PIDs they are for the application sessions which are INACTIVE but connected.How do i confirm that the these sessions are holding server&#8217;s memory and the reason for the same?</p>
<p>Regards,<br />
Anand</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Charles Hooper</title>
		<link>http://hoopercharles.wordpress.com/2010/02/03/open-cursor-leaks-identifying-the-problem/#comment-389</link>
		<dc:creator><![CDATA[Charles Hooper]]></dc:creator>
		<pubDate>Wed, 17 Feb 2010 18:24:33 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1129#comment-389</guid>
		<description><![CDATA[It is my understanding that the memory usage will be accumulated as PGA memory usage if you have a dedicated server configuration.  I found a couple of message threads on asktom.oracle.com that will probably explain to you the memory usage much better than I could:
http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:4269591917792

http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:580621300346132183

http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:865497961356]]></description>
		<content:encoded><![CDATA[<p>It is my understanding that the memory usage will be accumulated as PGA memory usage if you have a dedicated server configuration.  I found a couple of message threads on asktom.oracle.com that will probably explain to you the memory usage much better than I could:<br />
<a href="http://asktom.oracle.com/pls/asktom/f?p=100:11:0" rel="nofollow">http://asktom.oracle.com/pls/asktom/f?p=100:11:0</a>::::P11_QUESTION_ID:4269591917792</p>
<p><a href="http://asktom.oracle.com/pls/asktom/f?p=100:11:0" rel="nofollow">http://asktom.oracle.com/pls/asktom/f?p=100:11:0</a>::::P11_QUESTION_ID:580621300346132183</p>
<p><a href="http://asktom.oracle.com/pls/asktom/f?p=100:11:0" rel="nofollow">http://asktom.oracle.com/pls/asktom/f?p=100:11:0</a>::::P11_QUESTION_ID:865497961356</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anand</title>
		<link>http://hoopercharles.wordpress.com/2010/02/03/open-cursor-leaks-identifying-the-problem/#comment-388</link>
		<dc:creator><![CDATA[Anand]]></dc:creator>
		<pubDate>Wed, 17 Feb 2010 16:56:14 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1129#comment-388</guid>
		<description><![CDATA[Hi Charles,
  Thanks for the input.Will check and definitely let you know.One more question , the server&#039;s memory allocated to the open cursor&#039;s session will be outside the SGA/PGA.It will be something that the PID is curently holding in the RAM.Am i right?

Anand]]></description>
		<content:encoded><![CDATA[<p>Hi Charles,<br />
  Thanks for the input.Will check and definitely let you know.One more question , the server&#8217;s memory allocated to the open cursor&#8217;s session will be outside the SGA/PGA.It will be something that the PID is curently holding in the RAM.Am i right?</p>
<p>Anand</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Charles Hooper</title>
		<link>http://hoopercharles.wordpress.com/2010/02/03/open-cursor-leaks-identifying-the-problem/#comment-387</link>
		<dc:creator><![CDATA[Charles Hooper]]></dc:creator>
		<pubDate>Wed, 17 Feb 2010 12:45:40 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1129#comment-387</guid>
		<description><![CDATA[Anand,

I believe that there is potential for double counting of shared memory segments.  I suggest taking a look at the following:
&lt;a href=&quot;http://www.pythian.com/news/741/pythian-goodies-free-memory-swap-oracle-and-everything/&quot; rel=&quot;nofollow&quot;&gt;Excellent Video and Documentation about Oracle Memory Usage&lt;/a&gt;
&lt;a href=&quot;http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:1715881300346604706&quot; rel=&quot;nofollow&quot;&gt;asktom.oracle.com Article about Oracle Memory Usage&lt;/a&gt;
&lt;a href=&quot;http://download.oracle.com/docs/cd/B28359_01/server.111/b32009/tuning.htm&quot; rel=&quot;nofollow&quot;&gt;Oracle Documentation Link about OS Tools&lt;/a&gt;

Regarding the query of V$OPEN_CURSOR, yes - open cursors will consume the server&#039;s memory.  I suggest also grouping on the SQL_ID so that you are able to determine if it is the same SQL statement that is open more than 600 times (opened and then abandoned), or if those 600+ entries in the count are 600+ different SQL statements caused by too large of a value for the SESSION_CACHED_CURSORS parameter.]]></description>
		<content:encoded><![CDATA[<p>Anand,</p>
<p>I believe that there is potential for double counting of shared memory segments.  I suggest taking a look at the following:<br />
<a href="http://www.pythian.com/news/741/pythian-goodies-free-memory-swap-oracle-and-everything/" rel="nofollow">Excellent Video and Documentation about Oracle Memory Usage</a><br />
<a href="http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:1715881300346604706" rel="nofollow">asktom.oracle.com Article about Oracle Memory Usage</a><br />
<a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b32009/tuning.htm" rel="nofollow">Oracle Documentation Link about OS Tools</a></p>
<p>Regarding the query of V$OPEN_CURSOR, yes &#8211; open cursors will consume the server&#8217;s memory.  I suggest also grouping on the SQL_ID so that you are able to determine if it is the same SQL statement that is open more than 600 times (opened and then abandoned), or if those 600+ entries in the count are 600+ different SQL statements caused by too large of a value for the SESSION_CACHED_CURSORS parameter.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anand</title>
		<link>http://hoopercharles.wordpress.com/2010/02/03/open-cursor-leaks-identifying-the-problem/#comment-385</link>
		<dc:creator><![CDATA[Anand]]></dc:creator>
		<pubDate>Wed, 17 Feb 2010 08:17:57 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1129#comment-385</guid>
		<description><![CDATA[For reference :-

[code]
select oc.sid, count(*) ,s.status,to_char(s.logon_time,&#039;DD-MM-YY HH24:MI:SS&#039;)in_time,s.LAST_CALL_ET from v$open_cursor oc,
v$session s  where oc.sid=s.sid and oc.user_name=&#039;APPLICATION_SCHEMA&#039; group by oc.sid,s.status,s.logon_time,s.LAST_CALL_ET;

Session
     ID   COUNT(*) STATUS   IN_TIME           LAST_CALL_ET
------- ---------- -------- ----------------- ------------
    235        715 INACTIVE 12-02-10 09:50:19            3
    222        662 INACTIVE 09-02-10 22:53:44          673
    260        672 INACTIVE 09-02-10 16:51:18       417235
    225        672 INACTIVE 09-02-10 22:53:44            0
    248        657 INACTIVE 09-02-10 17:02:36       445957
    237        645 INACTIVE 09-02-10 16:51:38       417235
    219        666 INACTIVE 09-02-10 22:53:44         9026
    234        678 INACTIVE 12-02-10 09:50:19         9026
    232        674 INACTIVE 09-02-10 16:50:25         9026
    230        661 INACTIVE 09-02-10 22:53:44          673
    227        677 INACTIVE 09-02-10 22:53:44           14
    243        648 INACTIVE 09-02-10 17:02:36       445957
    224        780 INACTIVE 11-02-10 21:10:00        11091
    231        667 INACTIVE 09-02-10 16:51:38         9026
[/code]]]></description>
		<content:encoded><![CDATA[<p>For reference :-</p>
<pre class="brush: plain; title: ; notranslate">
select oc.sid, count(*) ,s.status,to_char(s.logon_time,'DD-MM-YY HH24:MI:SS')in_time,s.LAST_CALL_ET from v$open_cursor oc,
v$session s  where oc.sid=s.sid and oc.user_name='APPLICATION_SCHEMA' group by oc.sid,s.status,s.logon_time,s.LAST_CALL_ET;

Session
     ID   COUNT(*) STATUS   IN_TIME           LAST_CALL_ET
------- ---------- -------- ----------------- ------------
    235        715 INACTIVE 12-02-10 09:50:19            3
    222        662 INACTIVE 09-02-10 22:53:44          673
    260        672 INACTIVE 09-02-10 16:51:18       417235
    225        672 INACTIVE 09-02-10 22:53:44            0
    248        657 INACTIVE 09-02-10 17:02:36       445957
    237        645 INACTIVE 09-02-10 16:51:38       417235
    219        666 INACTIVE 09-02-10 22:53:44         9026
    234        678 INACTIVE 12-02-10 09:50:19         9026
    232        674 INACTIVE 09-02-10 16:50:25         9026
    230        661 INACTIVE 09-02-10 22:53:44          673
    227        677 INACTIVE 09-02-10 22:53:44           14
    243        648 INACTIVE 09-02-10 17:02:36       445957
    224        780 INACTIVE 11-02-10 21:10:00        11091
    231        667 INACTIVE 09-02-10 16:51:38         9026
</pre>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anand</title>
		<link>http://hoopercharles.wordpress.com/2010/02/03/open-cursor-leaks-identifying-the-problem/#comment-384</link>
		<dc:creator><![CDATA[Anand]]></dc:creator>
		<pubDate>Wed, 17 Feb 2010 08:04:01 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1129#comment-384</guid>
		<description><![CDATA[Hi Charles,
  I am having a issue of OS memory crunch.The sever has 16Gb RAM, and hosts 2 db.The total sag+pga combined is ~10.5GB.For one of the database, i see in TOP command, RES column values like 1100M,1245M , though these sessions are inactive and the logon_time is of 9th Feb.The sessions are also having open_cursor.Can this is a bottleneck?Can snipping these sessions be useful?

Anand]]></description>
		<content:encoded><![CDATA[<p>Hi Charles,<br />
  I am having a issue of OS memory crunch.The sever has 16Gb RAM, and hosts 2 db.The total sag+pga combined is ~10.5GB.For one of the database, i see in TOP command, RES column values like 1100M,1245M , though these sessions are inactive and the logon_time is of 9th Feb.The sessions are also having open_cursor.Can this is a bottleneck?Can snipping these sessions be useful?</p>
<p>Anand</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Charles Hooper</title>
		<link>http://hoopercharles.wordpress.com/2010/02/03/open-cursor-leaks-identifying-the-problem/#comment-305</link>
		<dc:creator><![CDATA[Charles Hooper]]></dc:creator>
		<pubDate>Thu, 04 Feb 2010 12:22:10 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1129#comment-305</guid>
		<description><![CDATA[Anand,
It is important to determine if the session is still consuming CPU time - you will probably need to monitor the change in the DB CPU value in V$SESS_TIME_MODEL (assuming that you are running at least Oracle 10.1) for the session to determine if the session is still consuming CPU time.  The DB CPU value should not increase for the session if the session is INACTIVE  - see the script and example in this blog article:
http://hoopercharles.wordpress.com/2010/01/14/working-with-oracles-time-model-data-2/

You might also considering monitoring the DB time value in the same performance view to see if the session is currently stuck in a wait event, rather than consuming CPU time (in that view, DB time - DB CPU = wait event time for a single session).]]></description>
		<content:encoded><![CDATA[<p>Anand,<br />
It is important to determine if the session is still consuming CPU time &#8211; you will probably need to monitor the change in the DB CPU value in V$SESS_TIME_MODEL (assuming that you are running at least Oracle 10.1) for the session to determine if the session is still consuming CPU time.  The DB CPU value should not increase for the session if the session is INACTIVE  &#8211; see the script and example in this blog article:<br />
<a href="http://hoopercharles.wordpress.com/2010/01/14/working-with-oracles-time-model-data-2/" rel="nofollow">http://hoopercharles.wordpress.com/2010/01/14/working-with-oracles-time-model-data-2/</a></p>
<p>You might also considering monitoring the DB time value in the same performance view to see if the session is currently stuck in a wait event, rather than consuming CPU time (in that view, DB time &#8211; DB CPU = wait event time for a single session).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anand Prakash</title>
		<link>http://hoopercharles.wordpress.com/2010/02/03/open-cursor-leaks-identifying-the-problem/#comment-300</link>
		<dc:creator><![CDATA[Anand Prakash]]></dc:creator>
		<pubDate>Thu, 04 Feb 2010 07:56:52 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1129#comment-300</guid>
		<description><![CDATA[Hi Charles,

How to find why the cursor is still open for a session.I have a session with a logon date on 29-JAN-2010, which is INACTIVE and has 1 open_cursor.This session is having the maximum cpu usage,though inactive.How do i go ahead for analyzing it.

Regards,
Anand]]></description>
		<content:encoded><![CDATA[<p>Hi Charles,</p>
<p>How to find why the cursor is still open for a session.I have a session with a logon date on 29-JAN-2010, which is INACTIVE and has 1 open_cursor.This session is having the maximum cpu usage,though inactive.How do i go ahead for analyzing it.</p>
<p>Regards,<br />
Anand</p>
]]></content:encoded>
	</item>
</channel>
</rss>
