Firstly thanks for the reasoning and side-effect you explained, especially
the side-effect.
You have asserted and cleared my view about using Database connection
pooling and which seems to be a routine affair when having servlets on your
site,
But I have doubts about how the Servlet Engine instances could instantiate
more than one DBPoolManager class ( a Singleton class) .... does the load
balancing part of the application server launch new application / servlet
launchers in different JVMs, depending on the client requests ?
The working of the application server and ServletEngines w.r.t Load
Balancing is a bit hazy in my mind. Any pointers to more information could
do a world of good ;-).
Thanks,
Yogesh
> -----Original Message-----
> From: Bryan Tower [SMTP:[EMAIL PROTECTED]]
> Sent: Wednesday, April 26, 2000 7:20 PM
> To: Yogesh More
> Subject: RE: JDBC-ORACLE- Exceeding open cursors Exception
>
>
> You can and should reuse the connection object since it is very expensive
> to
> create (over a second in most of my tests). The cursors are created any
> time you do an actual querry i.e. the statement objects.
> One standard you should follow is to put your statement execution in a try
> with a finally that closes the statement.
>
> Another side affect that you may see here is loss of data. If the
> statement
> object is not comitted, the handle to the cursor is lost which means that
> the database can not commit your changes. These cursors will be cleaned
> up
> when you application ends, which allows the database to clean up any
> network
> connections, which causes your changes to be rolled back.
>
> Bryan Tower
>
>
> Solved
> Basically I am using Database Connection pooling.
> I was not closing the connections, but neither was I closing the
> statements,
> resultsets and preparedStatements, which I am doing now and this solved
> the
> problem.
>
> Thanks for pointing it out.
> Yo
>
>
> > -----Original Message-----
> > From: Makarand Kashikar [SMTP:[EMAIL PROTECTED]]
> > Sent: Tuesday, April 25, 2000 10:22 PM
> > To: Yogesh More; [EMAIL PROTECTED]
> > Subject: Re: JDBC-ORACLE- Exceeding open cursors Exception
> >
> > the resultset that u open for every query must be closed...
> > after u r done....
> > this could also happen with the PreparedStatement...
> > U must realease a resource after u r done...thats the rule...
> >
> > ----- Original Message -----
> > From: Yogesh More <[EMAIL PROTECTED]>
> > To: <[EMAIL PROTECTED]>
> > Sent: Tuesday, April 25, 2000 5:36 AM
> > Subject: JDBC-ORACLE- Exceeding open cursors Exception
> >
> >
> > > I'm connecting to an ORACLE Database,
> > > after a limited set of connections ( in my case 10 connections) are
> > opened
> > > to the ORACLE database, and lots of queries are fired using these
> > > connections ... I get an Exception
> > >
> > > java.sql.SQLException: ORA-01000: maximum open cursors exceeded
> > >
> > > What's the open cursors problem here?
> > > How could avoid this exception?
> > >
> > > Thanks in Advance,
> > > Yogesh
> > >
> > > ---
> > > To unsubscribe, mail [EMAIL PROTECTED]
> > > To get help, mail [EMAIL PROTECTED]
> > >
> >
> >
> > ---
> > To unsubscribe, mail [EMAIL PROTECTED]
> > To get help, mail [EMAIL PROTECTED]
>
> ---
> To unsubscribe, mail [EMAIL PROTECTED]
> To get help, mail [EMAIL PROTECTED]
___________________________________________________________________________
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff SERVLET-INTEREST".
Archives: http://archives.java.sun.com/archives/servlet-interest.html
Resources: http://java.sun.com/products/servlet/external-resources.html
LISTSERV Help: http://www.lsoft.com/manuals/user/user.html