0 Replies Latest reply on Sep 5, 2006 11:55 AM by Johan Romme

    enlist problem

    Johan Romme Newbie

      Hi all,

      Every now and then, say once a week we have a problem with enlisting? a transaction, for example see the following stacktrace.

      Code:

      org.jboss.util.NestedSQLException: Could not enlist in transaction on entering meta-aware object!; -
      nested throwable: (javax.transaction.SystemException: java.lang.Throwable: Unabled to
      enlist resource, see the previous warnings. tx=TransactionImpl:XidImpl[FormatId=257, GlobalId=nldbld
      1/1526, BranchQual=, localId=1526]); - nested throwable: (org.jboss.resource.JBossResou
      rceException: Could not enlist in transaction on entering meta-aware object!; - nested throwable: (j
      avax.transaction.SystemException: java.lang.Throwable: Unabled to enlist resource, see
      the previous warnings. tx=TransactionImpl:XidImpl[FormatId=257, GlobalId=nldbld1/1526, BranchQual=,
      localId=1526]))
      at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:94
      )
      at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalD
      ataSourceConnectionProvider.java:80)
      at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:298)
      at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:110)
      at org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatcher.java:88)
      at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1162)
      at org.hibernate.loader.Loader.doQuery(Loader.java:390)
      at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:218)
      at org.hibernate.loader.Loader.loadEntity(Loader.java:1345)
      at org.hibernate.loader.entity.EntityLoader.load(EntityLoader.java:116)
      at org.hibernate.loader.entity.EntityLoader.load(EntityLoader.java:101)
      at org.hibernate.persister.entity.BasicEntityPersister.load(BasicEntityPersister.java:2471)
      at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListe
      ner.java:351)
      at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:332
      )
      at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:113)
      at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.jav
      a:151)
      at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:79)

      at org.hibernate.impl.SessionImpl.load(SessionImpl.java:603)
      at org.hibernate.impl.SessionImpl.load(SessionImpl.java:596)
      at org.springframework.orm.hibernate3.HibernateTemplate$CloseSuppressingInvocationHandler.in
      voke(HibernateTemplate.java:1025)
      at $Proxy222.load(Unknown Source)
      at nl.elegant.lottery.batch.management.dao.hibernate.HibernateManagedBatchDao$4.doInHibernat
      e(HibernateManagedBatchDao.java:217)

      Caused by: org.jboss.resource.JBossResourceException: Could not enlist in transaction on entering me
      ta-aware object!; - nested throwable: (javax.transaction.SystemException: java.lang.Throwable: Unabl
      ed to enlist resource, see the previous warnings. tx=TransactionImpl:XidImpl[FormatId=257, GlobalId=
      nldbld1/1526, BranchQual=, localId=1526])
      at org.jboss.resource.connectionmanager.TxConnectionManager.managedConnectionReconnected(TxC
      onnectionManager.java:329)
      at org.jboss.resource.connectionmanager.BaseConnectionManager2.reconnectManagedConnection(Ba
      seConnectionManager2.java:501)
      at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnec
      tionManager2.java:382)
      at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.alloca
      teConnection(BaseConnectionManager2.java:812)
      at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:88
      )
      ... 68 more
      Caused by: javax.transaction.SystemException: java.lang.Throwable: Unabled to enlist resource, see t
      he previous warnings. tx=TransactionImpl:XidImpl[FormatId=257, GlobalId=nldbld1/1526, BranchQual=, l
      ocalId=1526]
      at org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener$Transa
      ctionSynchronization.checkEnlisted(TxConnectionManager.java:728)
      at org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener.enlist
      (TxConnectionManager.java:561)
      at org.jboss.resource.connectionmanager.TxConnectionManager.managedConnectionReconnected(TxC
      onnectionManager.java:323)
      ... 72 more




      We have some 20 environments running development cycles, testing environments (manual and automated) and (pre-)production.

      We have an oracle9206 database and use the oracle10.2.0.1 jdbc driver.
      We use jboss-404GA, hibernate305, spring, EJB's and CMT
      At this moment we do not use jbossTransactions.
      We have 6 datasource 5 of which are XA.

      Recently we upgraded from jboss403sp1 and had hoped the enlist problem would disappear.

      As said the error occurs about once a week in one of the environments, is not reproducable, does not always occur at the same spot in our application and seems to occur when the system is busy (high cpu-load).

      Searching jboss-forums and other resources does not give the solution, all suggestions we have tried. Maybe someone at this forum has an answer, or should we start using JbossTransactions...

      Thanks in advance.