Yes, you are correct.  I was thinking of another cursor
parm; I should have checked first.

Jared

On Sat, 2003-11-29 at 22:14, Richard Ji wrote:
> I thought the session_cached_cursors is dynamic and scope is
> session?  This is on 8.1.7.  I have used:
> 
> alter session set session_cached_cursors=500;
> 
> -----Original Message-----
> Sent: Sunday, November 30, 2003 12:24 AM
> To: Multiple recipients of list ORACLE-L
> 
> 
> 
> Sami,
> 
> 'cached_cursors' is not a valid hint, at least not in 9i.
> 
> Or at least, I can find no reference to it.
> 
> And 'cached cursors' as it appears in the SQL is not a
> valid hint syntax.
> 
> You need to set the session_cached_cursors value in the
> init.ora, and bounce the database.  This parameter cannot
> be set dynamically, at least as of 9i.
> 
> Jared
> 
> On Sat, 2003-11-29 at 14:44, Sami wrote:
> > Dear Jonathan Lewis,
> > 
> > Many thanks for your response.
> > 
> > Using session_cached_cursor parameter I am not getting better response time.
> > I did run this testcases multiple times but always session_cached_cursor=0
> > gives better response time.
> > But the same time w.r.t latch, session_cached_cursor=100 is giving positive
> > impact.
> > 
> > 1) session_cached_cursor=0 -> more latches but good response time(2.60)
> > 2) session_cached_cursor=100 -> less # of latches but higher response
> > time(2.87)
> > 
> > Version :8.1.7.3
> > OS: Sun Solaris
> > 
> > tkprof output
> > =============
> >  SELECT /*+ cached cursors 0
> > */FIRST_NAME,LAST_NAME,CUSTOMERID,COUNTRYABBREV
> >  FROM  T1 P,T2 E,T3 C  WHERE P.T1ID =   E.T1ID  AND P.BUSINESS_COUNTRY_ID =
> > C.COUNTRYABBREV
> > 
> > 
> >  call     count       cpu    elapsed       disk      query    current
> > rows
> >  ------- ------  -------- ---------- ---------- ---------- ----------
> > ----------
> >  Parse     2000      1.76       1.77          0          0          0
> > 0
> >  Execute   2000      0.84       0.74          0          0          0
> > 0
> >  Fetch        0      0.00       0.00          0          0          0
> > 0
> >  ------- ------  -------- ---------- ---------- ---------- ----------
> > ----------
> >  total     4000      2.60       2.51          0          0          0
> > 0
> > 
> >  Misses in library cache during parse: 0
> >  Optimizer goal: CHOOSE
> >  Parsing user id: 165     (recursive depth: 1)
> > 
> >  Rows     Row Source Operation
> >  -------  ---------------------------------------------------
> >        0  HASH JOIN
> >        0   INDEX FAST FULL SCAN (object id 76648)
> >        0   HASH JOIN
> >        0    TABLE ACCESS FULL T2
> >        0    TABLE ACCESS FULL T1
> > 
> > 
> > 
> > 
> >  SELECT /*+ cached cursors 100  */FIRST_NAME,LAST_NAME,CUSTOMERID,
> > COUNTRYABBREV
> >  FROM  T1 P,T2 E,T3 C  WHERE P.T1ID =   E.T1ID  AND P.BUSINESS_COUNTRY_ID =
> > C.COUNTRYABBREV
> > 
> > 
> >  call     count       cpu    elapsed       disk      query    current
> > rows
> >  ------- ------  -------- ---------- ---------- ---------- ----------
> > ----------
> >  Parse     2000      2.05       1.99          0          0          0
> > 0
> >  Execute   2000      0.82       0.74          0          0          0
> > 0
> >  Fetch        0      0.00       0.00          0          0          0
> > 0
> >  ------- ------  -------- ---------- ---------- ---------- ----------
> > ----------
> >  total     4000      2.87       2.73          0          0          0
> > 0
> > 
> >  Misses in library cache during parse: 0
> >  Optimizer goal: CHOOSE
> >  Parsing user id: 165     (recursive depth: 1)
> > 
> >  Rows     Row Source Operation
> >  -------  ---------------------------------------------------
> >        0  HASH JOIN
> >        0   INDEX FAST FULL SCAN (object id 76648)
> >        0   HASH JOIN
> >        0    TABLE ACCESS FULL T2
> >        0    TABLE ACCESS FULL T1
> > 
> > 
> > ****************************************************************************
> > ****
> > 
> > Program used to generate the above trace file.
> > ==============================================
> > 
> > alter session set SQL_TRACE=true;
> > alter session set session_cached_cursors=0;
> > declare
> >     type rc is ref cursor;
> >     C rc;
> >     n number :=0;
> > begin
> > n := dbms_utility.get_time;
> >     for i in 1 .. 2000 loop
> >         open C for select /*+ cached cursors 0 */
> > first_name,last_name,customerid,countryabbrev from t1 p,t2 e,t3 c where
> > p.t1id=e.t1id and p.business_country_id=c.countryabbrev;
> >         close C;
> >     end loop;
> > dbms_output.put_line( dbms_utility.get_time - n );
> > end;
> > /
> > alter session set session_cached_cursors=100;
> > declare
> >     type rc is ref cursor;
> >     C rc;
> >     n number :=0;
> > begin
> > n := dbms_utility.get_time;
> >     for i in 1 .. 2000 loop
> >         --open C for select /*+ cached_cursors 100 */ * from dual;
> >         open C for select /*+ cached cursors 100 */
> > first_name,last_name,customerid,countryabbrev from t1 p,t2 e,t3 c where
> > p.t1id=e.t1id and p.business_country_id=c.countryabbrev;
> >         close C;
> >     end loop;
> > dbms_output.put_line( dbms_utility.get_time - n );
> > end;
> > /
> > 
> > 
> >   SQL> @x
> > 
> >  Session altered.
> >  Session altered.
> > 
> >  394
> > 
> >  PL/SQL procedure successfully completed.
> >  Session altered.
> > 
> >  413
> > 
> >  PL/SQL procedure successfully completed.
> >   SQL>
> > 
> > 
> > Name                                Run1      Run2      Diff
> > LATCH.KCL lock element parent          1         2         1
> > LATCH.KCL name table latch             1         2         1
> > LATCH.cache buffers lru chain          1         2         1
> > STAT...calls to kcmgas                 2         1        -1
> > STAT...redo ordering marks             2         1        -1
> > STAT...free buffer requested           2         1        -1
> > LATCH.checkpoint queue latch         113       114         1
> > LATCH.list of block allocation         0         1         1
> > LATCH.dlm domain lock table la         0         2         2
> > LATCH.name-service namespace b        17        19         2
> > LATCH.name-service request que        17        19         2
> > LATCH.redo writing                     4         6         2
> > STAT...redo entries                   26        28         2
> > LATCH.dlm group lock table lat         0         2         2
> > STAT...calls to kcmgcs                17        20         3
> > LATCH.dlm lock table freelist     12,000    12,004         4
> > LATCH.session allocation              15        19         4
> > LATCH.enqueue hash chains              0         4         4
> > LATCH.enqueues                         0         4         4
> > LATCH.dlm resource hash list      24,000    24,005         5
> > LATCH.process parent latch        30,000    30,005         5
> > STAT...consistent gets                34        39         5
> > LATCH.redo allocation                 30        25        -5
> > STAT...db block gets                  64        70         6
> > STAT...consistent changes             60        68         8
> > LATCH.undo global data                23        14        -9
> > STAT...db block changes               88        97         9
> > LATCH.dlm resource table freel     6,026     6,037        11
> > STAT...session logical reads          98       109        11
> > STAT...parse time cpu                 57        83        26
> > STAT...parse time elapsed             58        85        27
> > LATCH.messages                       200       236        36
> > STAT...recursive cpu usage           220       256        36
> > LATCH.cache buffers chains           404       327       -77
> > STAT...redo size                   4,304     4,500       196
> > STAT...session cursor cache co       -99       100       199
> > LATCH.shared pool                 14,002     8,002    -6,000
> > LATCH.library cache               94,232    79,824   -14,408
> > 
> > Run1 latches total versus runs -- difference and pct
> > Run1      Run2      Diff     Pct
> > 181,088   160,677   -20,411 112.70%
> > 
> > 
> > -- 
> > Please see the official ORACLE-L FAQ: http://www.orafaq.net
> > -- 
> > Author: Sami
> >   INET: [EMAIL PROTECTED]
> > 
> > Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
> > San Diego, California        -- Mailing list and web hosting services
> > ---------------------------------------------------------------------
> > To REMOVE yourself from this mailing list, send an E-Mail message
> > to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
> > the message BODY, include a line containing: UNSUB ORACLE-L
> > (or the name of mailing list you want to be removed from).  You may
> > also send the HELP command for other information (like subscribing).
> > 
> 
> 
> -- 
> Please see the official ORACLE-L FAQ: http://www.orafaq.net
> -- 
> Author: Jared Still
>   INET: [EMAIL PROTECTED]
> 
> Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
> San Diego, California        -- Mailing list and web hosting services
> ---------------------------------------------------------------------
> To REMOVE yourself from this mailing list, send an E-Mail message
> to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
> the message BODY, include a line containing: UNSUB ORACLE-L
> (or the name of mailing list you want to be removed from).  You may
> also send the HELP command for other information (like subscribing).
> -- 
> Please see the official ORACLE-L FAQ: http://www.orafaq.net
> -- 
> Author: Richard Ji
>   INET: [EMAIL PROTECTED]
> 
> Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
> San Diego, California        -- Mailing list and web hosting services
> ---------------------------------------------------------------------
> To REMOVE yourself from this mailing list, send an E-Mail message
> to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
> the message BODY, include a line containing: UNSUB ORACLE-L
> (or the name of mailing list you want to be removed from).  You may
> also send the HELP command for other information (like subscribing).
> 


-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.net
-- 
Author: Jared Still
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
San Diego, California        -- Mailing list and web hosting services
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

Reply via email to