Hi, maybe try to add in the resource properties:
DataSourceCreator = dbcp *Romain Manni-Bucau* *Twitter: @rmannibucau <https://twitter.com/rmannibucau>* *Blog: **http://rmannibucau.wordpress.com/*<http://rmannibucau.wordpress.com/> *LinkedIn: **http://fr.linkedin.com/in/rmannibucau* *Github: https://github.com/rmannibucau* 2013/4/2 BKumar <[email protected]> > Hi, > > We have recently migrated to tomee+ 1.5.1 from Jboss. Until now everything > was working good. But when we are running large processes it is throwing > error "maximum open cursors exceeded". We have around 60 entity beans(CMP) > .Also, We are not manually opening or closing any connection everything > is > done by Container only.We are just working on Entity. > > After googling we found this may be related to statement caching, which > is > controlled two property i.e. "PoolPreparedStatements" and > "maxOpenPreparedStatements" in tomee.xml. > > Tomee.xml ::: > > <Resource id="RageDataSource" type="DataSource"> > JdbcDriver oracle.jdbc.driver.OracleDriver > JdbcUrl jdbc:oracle:thin:@<ID>:5584:PLTDEV > UserName test > Password test > JtaManaged true > PoolPreparedStatements true > maxOpenPreparedStatements 200 > </Resource> > > <Resource id="RageNoTxDataSource" type="DataSource"> > JdbcDriver oracle.jdbc.driver.OracleDriver > JdbcUrl jdbc:oracle:thin:@<ID>:5584:PLTDEV > UserName test > Password test > JtaManaged false > PoolPreparedStatements true > maxOpenPreparedStatements 200 > </Resource> > > > Error: > > javax.ejb.EJBException: The transaction has been marked rollback only > because the bean encountered a non-application exception > :org.apache.openjpa.persistence.PersistenceException : ORA-00604: error > occurred at recursive SQL level 1 > ORA-01000: maximum open cursors exceeded > ORA-00604: error occurred at recursive SQL level 1 > ORA-01000: maximum open cursors exceeded > ORA-01000: maximum open cursors exceeded > {prepstmnt 1636515580 SELECT t0.CMPT_SEQ_ID, t0.TFP_PROPERTYNAME, > t0.TFP_PROPVAL, t0.TFP_PROPVAL_DATATYPE, t0.TFP_UPDATE_COUNT FROM > TASK_CONFIGURATION t0 WHERE (t0.CMPT_SEQ_ID = ?) [params=?]} [code=604, > state=60000] > at > > com.rage.common.util.AppServerUtility.getException(AppServerUtility.java:412) > at > > com.rage.common.dal.TaskDBUtility.getTaskConfigurations(TaskDBUtility.java:3011) > at > > com.rage.process.bizcomp.ProcessFlowchartFacadeBean.get(ProcessFlowchartFacadeBean.java:317) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:181) > at > > org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:163) > at > org.apache.openejb.cdi.CdiInterceptor.invoke(CdiInterceptor.java:128) > at > org.apache.openejb.cdi.CdiInterceptor.access$000(CdiInterceptor.java:43) > at > org.apache.openejb.cdi.CdiInterceptor$1.call(CdiInterceptor.java:64) > at > org.apache.openejb.cdi.CdiInterceptor.aroundInvoke(CdiInterceptor.java:70) > at sun.reflect.GeneratedMethodAccessor107.invoke(Unknown Source) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:181) > at > > org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:163) > at > > org.apache.openejb.monitoring.StatsInterceptor.record(StatsInterceptor.java:176) > at > > org.apache.openejb.monitoring.StatsInterceptor.invoke(StatsInterceptor.java:95) > at sun.reflect.GeneratedMethodAccessor106.invoke(Unknown Source) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:181) > at > > org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:163) > at > > org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:138) > at > > org.apache.openejb.core.stateless.StatelessContainer._invoke(StatelessContainer.java:237) > at > > org.apache.openejb.core.stateless.StatelessContainer.invoke(StatelessContainer.java:189) > at > > org.apache.openejb.core.ivm.EjbObjectProxyHandler.synchronizedBusinessMethod(EjbObjectProxyHandler.java:253) > at > > org.apache.openejb.core.ivm.EjbObjectProxyHandler.businessMethod(EjbObjectProxyHandler.java:248) > at > > org.apache.openejb.core.ivm.EjbObjectProxyHandler._invoke(EjbObjectProxyHandler.java:92) > at > > org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:279 > > > Thanks, > Bibhuti > > > > > > -- > View this message in context: > http://openejb.979440.n4.nabble.com/maximum-open-cursors-exceeded-in-entity-bean-tp4661896.html > Sent from the OpenEJB User mailing list archive at Nabble.com. >
