if did a google search for ofbiz oracle here is one link http://docs.ofbiz.org/display/~jacopoc/OFBiz+and+Oracle
maburger sent the following on 6/30/2008 6:37 AM: > This problem is not os depending. Were running on both Windows and Linux. The > MySQL Versions also differ from 4.x to 5.x (ORACLE 10g) but the error is the > same. > > I forgot to post one important change we made to the framework. There is a > known problem within the interaction to the MySQL Database server, which > closes idle connections after a defined timeout (e.g. after 8 hours). If > this happens, the connection pool does not notice this with the result that > it returns an invalid connection. In this situation, the system status is > not very stable and it has happend that some (productive) jobs have been > cancelled and not been rescheduled. > > So what we have done is a modification to the > MinervaConnectionFactory.getConnection method where we enabled the gc thread > (for idle connections) for a new XAPoolDataSource. > > //enable gc with default values > pds.setGCEnabled(true); > pds.setIdleTimeoutEnabled(true); > > > > jacques.le.roux wrote: >> Are you runnig on Windows ? I remember having read that sometimes Windows >> does not free some files handles and such errors may >> occur. >> Which version of MySQL and ORACLE are you using ? >> >> Jacques >> >> From: "maburger" <[EMAIL PROTECTED]> >>> Is this a known bug within the Minerva Pool? I don't think it is possible >>> to >>> switch the pool by configuration as it could be done in the 4+ version? >>> We >>> are not kind to rewrite our current system because we want to migrate to >>> OFBiz 4+ in the next months, but we need a fix for this problem to bridge >>> over this period. >>> >>> >>> maburger wrote: >>>> Hi *, >>>> >>>> we're running OFBiz on MySQL and/or ORACLE. Sometimes were getting an >>>> error within the JobManager.poll method. It seems like a DB lock is set >>>> on >>>> the JOB_SANBOX table, so the JobManager is not abled to execute the >>>> store >>>> operation. Has anyone ever had a similar problem or is this a known bug? >>>> >>>> We are using the last 3.x OFBiz release. >>>> >>>> Thanks for every reply! >>>> >>>> Here's the Stacktrace (The corresponding MySQL error is a "lock wait >>>> timeout exceeded"): >>>> >>>> >>>> 2008-06-26 18:34:16,276 [EMAIL PROTECTED] ERROR >>>> org.ofbiz.entity.GenericDelegator - Failure in storeByCondition >>>> operation >>>> for entity [JobSandbox]: org.ofbiz.entity.GenericDataSourceException: >>>> Generic Entity Exception occured in updateByCondition (SQL Exception >>>> while >>>> executing the following:UPDATE BIC_SYSTEM.JOB_SANDBOX SET >>>> RUN_BY_INSTANCE_ID = ?, STATUS_ID = ? WHERE ((RUN_TIME <= ? AND >>>> START_DATE_TIME IS NULL AND CANCEL_DATE_TIME IS NULL AND >>>> RUN_BY_INSTANCE_ID IS NULL) AND (POOL_ID IS NULL OR POOL_ID = ?)) (Io >>>> exception: Connection timed out)). Rolling back transaction. >>>> org.ofbiz.entity.GenericDataSourceException: Generic Entity Exception >>>> occured in updateByCondition (SQL Exception while executing the >>>> following:UPDATE BIC_SYSTEM.JOB_SANDBOX SET RUN_BY_INSTANCE_ID = ?, >>>> STATUS_ID = ? WHERE ((RUN_TIME <= ? AND START_DATE_TIME IS NULL AND >>>> CANCEL_DATE_TIME IS NULL AND RUN_BY_INSTANCE_ID IS NULL) AND (POOL_ID IS >>>> NULL OR POOL_ID = ?)) (Io exception: Connection timed out)) >>>> at >>>> org.ofbiz.entity.datasource.GenericDAO.updateByCondition(GenericDAO.java:290) >>>> at >>>> org.ofbiz.entity.datasource.GenericHelperDAO.storeByCondition(GenericHelperDAO.java:186) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:957) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:932) >>>> at org.ofbiz.service.job.JobManager.poll(JobManager.java:154) >>>> at org.ofbiz.service.job.JobPoller.run(JobPoller.java:82) >>>> at java.lang.Thread.run(Thread.java:595) >>>> org.ofbiz.entity.GenericDataSourceException: SQL Exception while >>>> executing >>>> the following:UPDATE BIC_SYSTEM.JOB_SANDBOX SET RUN_BY_INSTANCE_ID = ?, >>>> STATUS_ID = ? WHERE ((RUN_TIME <= ? AND START_DATE_TIME IS NULL AND >>>> CANCEL_DATE_TIME IS NULL AND RUN_BY_INSTANCE_ID IS NULL) AND (POOL_ID IS >>>> NULL OR POOL_ID = ?)) (Io exception: Connection timed out) >>>> at >>>> org.ofbiz.entity.jdbc.SQLProcessor.executeUpdate(SQLProcessor.java:427) >>>> at >>>> org.ofbiz.entity.datasource.GenericDAO.updateByCondition(GenericDAO.java:342) >>>> at >>>> org.ofbiz.entity.datasource.GenericDAO.updateByCondition(GenericDAO.java:287) >>>> at >>>> org.ofbiz.entity.datasource.GenericHelperDAO.storeByCondition(GenericHelperDAO.java:186) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:957) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:932) >>>> at org.ofbiz.service.job.JobManager.poll(JobManager.java:154) >>>> at org.ofbiz.service.job.JobPoller.run(JobPoller.java:82) >>>> at java.lang.Thread.run(Thread.java:595) >>>> java.sql.SQLException: Io exception: Connection timed out >>>> at >>>> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) >>>> at >>>> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146) >>>> at >>>> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255) >>>> at >>>> oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:988) >>>> at >>>> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1170) >>>> at >>>> oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3339) >>>> at >>>> oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3423) >>>> at >>>> org.ofbiz.minerva.pool.jdbc.PreparedStatementInPool.executeUpdate(PreparedStatementInPool.java:82) >>>> at >>>> org.ofbiz.entity.jdbc.SQLProcessor.executeUpdate(SQLProcessor.java:424) >>>> at >>>> org.ofbiz.entity.datasource.GenericDAO.updateByCondition(GenericDAO.java:342) >>>> at >>>> org.ofbiz.entity.datasource.GenericDAO.updateByCondition(GenericDAO.java:287) >>>> at >>>> org.ofbiz.entity.datasource.GenericHelperDAO.storeByCondition(GenericHelperDAO.java:186) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:957) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:932) >>>> at org.ofbiz.service.job.JobManager.poll(JobManager.java:154) >>>> at org.ofbiz.service.job.JobPoller.run(JobPoller.java:82) >>>> at java.lang.Thread.run(Thread.java:595) >>>> 2008-06-26 18:34:16,276 [EMAIL PROTECTED] WARN >>>> org.ofbiz.entity.transaction.TransactionUtil - >>>> [TransactionUtil.setRollbackOnly] Calling transaction setRollbackOnly; >>>> this stack trace shows where this is happening: >>>> java.lang.Exception: Failure in storeByCondition operation for entity >>>> [JobSandbox]: org.ofbiz.entity.GenericDataSourceException: Generic >>>> Entity >>>> Exception occured in updateByCondition (SQL Exception while executing >>>> the >>>> following:UPDATE BIC_SYSTEM.JOB_SANDBOX SET RUN_BY_INSTANCE_ID = ?, >>>> STATUS_ID = ? WHERE ((RUN_TIME <= ? AND START_DATE_TIME IS NULL AND >>>> CANCEL_DATE_TIME IS NULL AND RUN_BY_INSTANCE_ID IS NULL) AND (POOL_ID IS >>>> NULL OR POOL_ID = ?)) (Io exception: Connection timed out)). Rolling >>>> back >>>> transaction. >>>> at >>>> org.ofbiz.entity.transaction.TransactionUtil.setRollbackOnly(TransactionUtil.java:282) >>>> at >>>> org.ofbiz.entity.transaction.TransactionUtil.rollback(TransactionUtil.java:232) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:963) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:932) >>>> at org.ofbiz.service.job.JobManager.poll(JobManager.java:154) >>>> at org.ofbiz.service.job.JobPoller.run(JobPoller.java:82) >>>> at java.lang.Thread.run(Thread.java:595) >>>> 2008-06-26 18:34:16,277 [EMAIL PROTECTED] ERROR >>>> org.ofbiz.service.job.JobManager - Cannot load jobs from datasource. >>>> org.ofbiz.entity.GenericDataSourceException: Generic Entity Exception >>>> occured in updateByCondition (SQL Exception while executing the >>>> following:UPDATE BIC_SYSTEM.JOB_SANDBOX SET RUN_BY_INSTANCE_ID = ?, >>>> STATUS_ID = ? WHERE ((RUN_TIME <= ? AND START_DATE_TIME IS NULL AND >>>> CANCEL_DATE_TIME IS NULL AND RUN_BY_INSTANCE_ID IS NULL) AND (POOL_ID IS >>>> NULL OR POOL_ID = ?)) (Io exception: Connection timed out)) >>>> at >>>> org.ofbiz.entity.datasource.GenericDAO.updateByCondition(GenericDAO.java:290) >>>> at >>>> org.ofbiz.entity.datasource.GenericHelperDAO.storeByCondition(GenericHelperDAO.java:186) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:957) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:932) >>>> at org.ofbiz.service.job.JobManager.poll(JobManager.java:154) >>>> at org.ofbiz.service.job.JobPoller.run(JobPoller.java:82) >>>> at java.lang.Thread.run(Thread.java:595) >>>> org.ofbiz.entity.GenericDataSourceException: SQL Exception while >>>> executing >>>> the following:UPDATE BIC_SYSTEM.JOB_SANDBOX SET RUN_BY_INSTANCE_ID = ?, >>>> STATUS_ID = ? WHERE ((RUN_TIME <= ? AND START_DATE_TIME IS NULL AND >>>> CANCEL_DATE_TIME IS NULL AND RUN_BY_INSTANCE_ID IS NULL) AND (POOL_ID IS >>>> NULL OR POOL_ID = ?)) (Io exception: Connection timed out) >>>> at >>>> org.ofbiz.entity.jdbc.SQLProcessor.executeUpdate(SQLProcessor.java:427) >>>> at >>>> org.ofbiz.entity.datasource.GenericDAO.updateByCondition(GenericDAO.java:342) >>>> at >>>> org.ofbiz.entity.datasource.GenericDAO.updateByCondition(GenericDAO.java:287) >>>> at >>>> org.ofbiz.entity.datasource.GenericHelperDAO.storeByCondition(GenericHelperDAO.java:186) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:957) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:932) >>>> at org.ofbiz.service.job.JobManager.poll(JobManager.java:154) >>>> at org.ofbiz.service.job.JobPoller.run(JobPoller.java:82) >>>> at java.lang.Thread.run(Thread.java:595) >>>> java.sql.SQLException: Io exception: Connection timed out >>>> at >>>> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) >>>> at >>>> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146) >>>> at >>>> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255) >>>> at >>>> oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:988) >>>> at >>>> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1170) >>>> at >>>> oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3339) >>>> at >>>> oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3423) >>>> at >>>> org.ofbiz.minerva.pool.jdbc.PreparedStatementInPool.executeUpdate(PreparedStatementInPool.java:82) >>>> at >>>> org.ofbiz.entity.jdbc.SQLProcessor.executeUpdate(SQLProcessor.java:424) >>>> at >>>> org.ofbiz.entity.datasource.GenericDAO.updateByCondition(GenericDAO.java:342) >>>> at >>>> org.ofbiz.entity.datasource.GenericDAO.updateByCondition(GenericDAO.java:287) >>>> at >>>> org.ofbiz.entity.datasource.GenericHelperDAO.storeByCondition(GenericHelperDAO.java:186) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:957) >>>> at >>>> org.ofbiz.entity.GenericDelegator.storeByCondition(GenericDelegator.java:932) >>>> at org.ofbiz.service.job.JobManager.poll(JobManager.java:154) >>>> at org.ofbiz.service.job.JobPoller.run(JobPoller.java:82) >>>> at java.lang.Thread.run(Thread.java:595) >>>> >>> -- >>> View this message in context: >>> http://www.nabble.com/Problem-with-JobSanbox-lock-on-%28MySQL-and-or-ORACLE%29-tp18192378p18194547.html >>> Sent from the OFBiz - User mailing list archive at Nabble.com. >>> >> >> >