RE: 10GR2 vs. 10GR1 Java Open Cursor Differences

  • From: "MacGregor, Ian A." <ian@xxxxxxxxxxxxxxxxx>
  • To: <oracle-l@xxxxxxxxxxxxx>
  • Date: Fri, 12 Jan 2007 07:08:51 -0800

Are you referencing Note:1020427.102?  If not please post the Bug number.  
Oracle states it is not a bug, but an optimization.  That's something which has 
been around for a long time certainly beofre 10gR2.

Testing has shown that closing the statement without explicitly closing the 
results set does not result in open cursor buildup.  However when the entire 
application is run we still have the problem.   Perhaps there are times when 
one has to close the results set  that the test is missing.

Ian 

-----Original Message-----
From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On 
Behalf Of Frits Hoogland
Sent: Friday, January 12, 2007 5:23 AM
To: Chris.Borrill@xxxxxx
Cc: oracle-l@xxxxxxxxxxxxx
Subject: Re: 10GR2 vs. 10GR1 Java Open Cursor Differences

Could this have something to do with the 10gr2 open cursors bug


On 1/11/07, Borrill, Christopher < Chris.Borrill@xxxxxx 
<mailto:Chris.Borrill@xxxxxx> > wrote:

        Could this have something to with statement caching? See:
        
        
http://download-west.oracle.com/docs/cd/B19306_01/java.102/b14355/stmtca 
<http://download-west.oracle.com/docs/cd/B19306_01/java.102/b14355/stmtca> 
        ch.htm#g1079466
        
        Statement caching can also be configure in the app server, here is the
        relavent doco for 10gAS:
        
http://download-west.oracle.com/docs/cd/B14099_19/web.1012/b14012/datasr 
<http://download-west.oracle.com/docs/cd/B14099_19/web.1012/b14012/datasr> 
        c.htm#sthref478
        
        Chris Borrill
        
        -----Original Message-----
        From: oracle-l-bounce@xxxxxxxxxxxxx 
<mailto:oracle-l-bounce@xxxxxxxxxxxxx> 
        [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On Behalf Of MacGregor, Ian A.
        Sent: Thursday, 11 January 2007 12:14 p.m.
        To: oracle-l@xxxxxxxxxxxxx <mailto:oracle-l@xxxxxxxxxxxxx> 
        Subject: 10GR2 vs. 10GR1 Java Open Cursor Differences
        
        Since Moving to 10,2 some open cursor problems have surfaced.  Here's an
        example of the code:
        
                // collect the ProcessInstances in this Stream's ParentStream 
        that depe nd (status transition) on ProcessInstances within this Stream:
        
                 stmt = connection.prepareStatement("select PI.ProcessInstance
        from Proc essInstance PI, Process P, ProcessStatusCondition PSC where 
        PI.Stream = ? and PI .Process = P.Process and P.Process =
        PSC.DependentProcess and PSC.Process in (se lect Process from Process
        where Task = ?) and PI.IsLatest = 1");
        
                 stmt.setInt(1, parentStream); 
                 stmt.setInt(2, task);
                 rs = stmt.executeQuery();
                 while (rs.next())
                    processInstanceSet.add(new
        Integer(rs.getInt("PROCESSINSTANCE")));
                 stmt.close (); 
        
        
        I'm not a Java person.  I did noticeThe code has no rs.close()
        statement.  The developer admits that he doesn't explicitly close the
        results set.  The trouble is that he swears it all worked in 10GR1 and 
        the users testing the system back him up.
        
        The code is indirectly recursive;   A calls B which calls A and may nest
        several times.
        
        Ian MacGregor
        Stanford Linear Accelerator Center
        ian@xxxxxxxxxxxxxxxxx <mailto:ian@xxxxxxxxxxxxxxxxx> 
        
        
        I
        --
        //www.freelists.org/webpage/oracle-l
        
        
        --
        //www.freelists.org/webpage/oracle-l 
        
        
        


--
//www.freelists.org/webpage/oracle-l


Other related posts: