We are not using any direct connections to the database. We only use CMP
beans. So there might be something wrong in the way I am using the beans,
or the could be a bug in Orion which is leaving a lot of cursors open. Then
again, it could be normal operation and we just need to increase the number
of cursors allowed.
-AP_
-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]On Behalf Of The
elephantwalker
Sent: Tuesday, August 14, 2001 10:55 AM
To: Orion-Interest
Subject: RE: ORA-01000: maximum open cursors exceeded Exception
Here's a bit of code I use alot in ejb's. The handler interface only has one
method, processResultSet. The getDBConnection is a helper method. Notice how
the connection, resultset and statement are closed. If these are'nt executed
in the proper order, and within a finally clause, oracle will glorck on you
with the 01000 error.
If you have many cmp beans, it could be that your maximum's for open cursors
is like 50 or so. It should be up around 300. This can be modified in the
ora.ini file.
Regards,
the elephantwalker
private void executeStatement(String statement, Handler handler) throws
RemoteException {
Connection con = null;
ResultSet rs = null;
Statement stmt = null;
try{
con = getDBConnection();
stmt = con.createStatement();
rs = stmt.executeQuery(statement);
handler.processResultSet(rs);
} catch (Exception ex){
throw new EJBException( ex.getMessage());
} finally {
try{
rs.close();
stmt.close();
con.close();
rs = null;
stmt = null;
con = null;
} catch (SQLException se){
throw new EJBException( se.getMessage());
}
}
-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]On Behalf Of Kesav Kumar
Sent: Tuesday, August 14, 2001 10:26 AM
To: Orion-Interest
Subject: RE: ORA-01000: maximum open cursors exceeded Exception
This is because you have too many opened statements and Resultsets. Make
sure that you close your statements and resultsets properly. Try to debug
the jdbc activity by setting the following properties.
jdbc.debug=true
debug.jdbc.check=true
jdbc.connection.debug=true
Kesav Kumar Kolla
Voquette Inc
650 356 3740(W)
510 889 6840(R)
Voquette....Delivering Sound Information
-----Original Message-----
From: Alex Paransky [mailto:[EMAIL PROTECTED]]
Sent: Monday, August 13, 2001 6:51 PM
To: Orion-Interest
Subject: ORA-01000: maximum open cursors exceeded Exception
We have been using the server more frequently now, and are getting this
exception from time to time. Does any one know why does this exception
occur and what to do about it? Could I be doing something wrong in my CMP
2.0 Entity Beans? I am using Orion Server 1.5.2.
Thanks.
-AP_
Embedded Exception ->
com.evermind.server.rmi.OrionRemoteException: Database error:
at
InterestEntityHome_EntityHomeWrapper532.findExistingEntity(InterestEntityHom
e_EntityHomeWrapper532.java:54)
at
InterestEntityHome_EntityHomeWrapper532.findByPrimaryKey(InterestEntityHome_
EntityHomeWrapper532.java:269)
at
com.indnet.symbiosis.service.interestmanagement.InterestManagementServiceBea
n.getValue(InterestManagementServiceBean.java:229)
at
com.indnet.symbiosis.service.interestmanagement.InterestManagementServiceBea
n.getValue(InterestManagementServiceBean.java:254)
at
com.indnet.symbiosis.service.interestmanagement.InterestManagementServiceBea
n.getTree(InterestManagementServiceBean.java:193)
at
com.indnet.symbiosis.service.interestmanagement.InterestManagementServiceBea
n.getTrees(InterestManagementServiceBean.java:202)
at
com.indnet.symbiosis.service.interestmanagement.InterestManagementServiceBea
n.getRootTrees(InterestManagementServiceBean.java:218)
at
InterestManagementService_StatelessSessionBeanWrapper8.getRootTrees(Interest
ManagementService_StatelessSessionBeanWrapper8.java:849)
at
com.indnet.symbiosis.client.jsp.pagegen.services.UserMaintenanceService.init
ialize(UserMaintenanceService.java:291)
at
com.slsideas.services.GenericServiceManager.initialize(GenericServiceManager
.java:99)
at
com.slsideas.pagegen.contexts.ServerContext.<init>(ServerContext.java:197)
at
com.slsideas.pagegen.servlets.BaseControllerServlet.doGet(BaseControllerServ
let.java:238)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:195)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:309)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:336)
at com.evermind._cxb._abe(Unknown Source)
at com.evermind._cxb._uec(Unknown Source)
at com.evermind._io._twc(Unknown Source)
at com.evermind._io._gc(Unknown Source)
at com.evermind._if.run(Unknown Source)