6 Replies Latest reply on Mar 23, 2011 7:18 AM by Arun Prasath siva thanu pillai

    Database already closed - jbpm persistence error on shutdown

    Hans Wolffenbuttel Expert

      When I shut down the JBoss 4.2.3 GA ESB 4.6 I get an error which should have been repaired in JIRA: http://jira.jboss.com/jira/browse/JBESB-1712?page=all

      10:03:13,167 WARN [AbstractBatcher] exception clearing maxRows/queryTimeout
      org.h2.jdbc.JdbcSQLException: Database is already closed (to disable automatic closing at VM shutdown, add ";DB_CLOSE_ON_EXIT=FALSE" to the db URL) [90121-68]
       at org.h2.message.Message.getSQLException(Message.java:91)
       at org.h2.message.Message.getSQLException(Message.java:95)
       at org.h2.message.Message.getSQLException(Message.java:73)
       at org.h2.message.Message.getSQLException(Message.java:116)
       at org.h2.jdbc.JdbcConnection.checkClosed(JdbcConnection.java:1226)
       at org.h2.jdbc.JdbcStatement.checkClosed(JdbcStatement.java:826)
       at org.h2.jdbc.JdbcStatement.getMaxRows(JdbcStatement.java:342)
       at org.jboss.resource.adapter.jdbc.CachedPreparedStatement.getMaxRows(CachedPreparedStatement.java:367)
       at org.jboss.resource.adapter.jdbc.WrappedStatement.getMaxRows(WrappedStatement.java:378)
       at org.hibernate.jdbc.AbstractBatcher.closeQueryStatement(AbstractBatcher.java:276)
       at org.hibernate.jdbc.AbstractBatcher.closeQueryStatement(AbstractBatcher.java:212)
       at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1583)
       at org.hibernate.loader.Loader.doQuery(Loader.java:673)
       at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
       at org.hibernate.loader.Loader.doList(Loader.java:2220)
       at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
       at org.hibernate.loader.Loader.list(Loader.java:2099)
       at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
       at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:338)
       at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
       at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
       at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
       at org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:811)
       at org.jbpm.db.JobSession.getFirstAcquirableJob(JobSession.java:52)
       at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:109)
       at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:54)
      10:03:13,172 WARN [JDBCExceptionReporter] SQL Error: 90121, SQLState: 90121
      10:03:13,172 ERROR [JDBCExceptionReporter] Database is already closed (to disable automatic closing at VM shutdown, add ";DB_CLOSE_ON_EXIT=FALSE" to the db URL) [90121-68]
      10:03:13,178 ERROR [Services] problem closing service 'persistence'
      org.jbpm.persistence.JbpmPersistenceException: couldn't commit user transaction
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:96)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.close(JtaDbPersistenceService.java:63)
       at org.jbpm.svc.Services.close(Services.java:294)
       at org.jbpm.JbpmContext.close(JbpmContext.java:136)
       at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:140)
       at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:54)
      Caused by: javax.transaction.RollbackException: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] Can't commit because the transaction is in aborted state
       at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1401)
       at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:135)
       at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:87)
       at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:140)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:94)
       ... 5 more
      10:03:13,178 ERROR [JobExecutorThread] exception in job executor thread. waiting 5000 milliseconds
      org.jbpm.persistence.JbpmPersistenceException: couldn't commit user transaction
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:96)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.close(JtaDbPersistenceService.java:63)
       at org.jbpm.svc.Services.close(Services.java:294)
       at org.jbpm.JbpmContext.close(JbpmContext.java:136)
       at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:140)
       at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:54)
      Caused by: javax.transaction.RollbackException: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] Can't commit because the transaction is in aborted state
       at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1401)
       at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:135)
       at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:87)
       at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:140)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:94)
       ... 5 more
      10:03:18,182 WARN [JDBCExceptionReporter] SQL Error: 90121, SQLState: 90121
      10:03:18,182 ERROR [JDBCExceptionReporter] Database is already closed (to disable automatic closing at VM shutdown, add ";DB_CLOSE_ON_EXIT=FALSE" to the db URL) [90121-68]
      10:03:18,186 ERROR [Services] problem closing service 'persistence'
      org.jbpm.persistence.JbpmPersistenceException: couldn't commit user transaction
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:96)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.close(JtaDbPersistenceService.java:63)
       at org.jbpm.svc.Services.close(Services.java:294)
       at org.jbpm.JbpmContext.close(JbpmContext.java:136)
       at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:140)
       at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:54)
      Caused by: javax.transaction.RollbackException: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] Can't commit because the transaction is in aborted state
       at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1401)
       at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:135)
       at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:87)
       at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:140)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:94)
       ... 5 more
      10:03:18,186 ERROR [JobExecutorThread] exception in job executor thread. waiting 10000 milliseconds
      org.jbpm.persistence.JbpmPersistenceException: couldn't commit user transaction
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:96)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.close(JtaDbPersistenceService.java:63)
       at org.jbpm.svc.Services.close(Services.java:294)
       at org.jbpm.JbpmContext.close(JbpmContext.java:136)
       at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:140)
       at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:54)
      Caused by: javax.transaction.RollbackException: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] Can't commit because the transaction is in aborted state
       at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1401)
       at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:135)
       at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:87)
       at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:140)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:94)
       ... 5 more
      10:03:28,190 WARN [JDBCExceptionReporter] SQL Error: 90121, SQLState: 90121
      10:03:28,190 ERROR [JDBCExceptionReporter] Database is already closed (to disable automatic closing at VM shutdown, add ";DB_CLOSE_ON_EXIT=FALSE" to the db URL) [90121-68]
      10:03:28,193 ERROR [Services] problem closing service 'persistence'
      org.jbpm.persistence.JbpmPersistenceException: couldn't commit user transaction
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:96)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.close(JtaDbPersistenceService.java:63)
       at org.jbpm.svc.Services.close(Services.java:294)
       at org.jbpm.JbpmContext.close(JbpmContext.java:136)
       at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:140)
       at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:54)
      Caused by: javax.transaction.RollbackException: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] Can't commit because the transaction is in aborted state
       at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1401)
       at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:135)
       at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:87)
       at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:140)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:94)
       ... 5 more
      10:03:28,193 ERROR [JobExecutorThread] exception in job executor thread. waiting 20000 milliseconds
      org.jbpm.persistence.JbpmPersistenceException: couldn't commit user transaction
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:96)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.close(JtaDbPersistenceService.java:63)
       at org.jbpm.svc.Services.close(Services.java:294)
       at org.jbpm.JbpmContext.close(JbpmContext.java:136)
       at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:140)
       at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:54)
      Caused by: javax.transaction.RollbackException: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] Can't commit because the transaction is in aborted state
       at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1401)
       at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:135)
       at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:87)
       at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:140)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:94)
       ... 5 more
      10:03:48,196 WARN [JDBCExceptionReporter] SQL Error: 90121, SQLState: 90121
      10:03:48,196 ERROR [JDBCExceptionReporter] Database is already closed (to disable automatic closing at VM shutdown, add ";DB_CLOSE_ON_EXIT=FALSE" to the db URL) [90121-68]
      10:03:48,199 ERROR [Services] problem closing service 'persistence'
      org.jbpm.persistence.JbpmPersistenceException: couldn't commit user transaction
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:96)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.close(JtaDbPersistenceService.java:63)
       at org.jbpm.svc.Services.close(Services.java:294)
       at org.jbpm.JbpmContext.close(JbpmContext.java:136)
       at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:140)
       at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:54)
      Caused by: javax.transaction.RollbackException: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] Can't commit because the transaction is in aborted state
       at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1401)
       at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:135)
       at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:87)
       at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:140)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:94)
       ... 5 more
      10:03:48,199 ERROR [JobExecutorThread] exception in job executor thread. waiting 40000 milliseconds
      org.jbpm.persistence.JbpmPersistenceException: couldn't commit user transaction
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:96)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.close(JtaDbPersistenceService.java:63)
       at org.jbpm.svc.Services.close(Services.java:294)
       at org.jbpm.JbpmContext.close(JbpmContext.java:136)
       at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:140)
       at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:54)
      Caused by: javax.transaction.RollbackException: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] Can't commit because the transaction is in aborted state
       at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1401)
       at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:135)
       at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:87)
       at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:140)
       at org.jbpm.persistence.jta.JtaDbPersistenceService.endUserTransaction(JtaDbPersistenceService.java:94)
       ... 5 more
      


      Regards,

      Hans