9 Replies Latest reply on Nov 18, 2002 10:09 PM by Scott Williams

    Help!!! ManagedConnection that was not killed!

    mang qin Newbie

      Hi

      I am using jboss3.1.0 alpha.
      I have one statelessbean A calls statelessbean B which loops and do findByXYZ on entityBeanC and insert to entityBeanD in the same loop.

      I have all statelessbeans being CMT and requiresNew
      entityBeans are CMP,CMT, required

      Locking policy is MethodOnlyEJBLock
      because QueuedPessimisticEJBLock will block all operation during a long transaction.

      This call works well during single user(client calls statelessBean A) mode.

      When 2 clients call concurrently, I'll get this
      WARN [org.jboss.resource.connectionmanager.LocalTxConnectionManager] reconnecting a connection handle that still has a managedConnection! org.jboss.resource.adapter.jdbc.local.JDBCManagedConnection@5861 org.jboss.resource.adapter.jdbc.local.ConnectionInPool@35e9ce
      2002-08-14 16:36:41,906 ERROR [org.jboss.ejb.GlobalTxEntityMap] Store failed on entity: 1787
      java.lang.IllegalArgumentException: reconnect(ConnectionRecord cr) called with a non null ManagedConnection that was not killed!
      at org.jboss.resource.connectionmanager.BaseConnectionManager2.reconnect(BaseConnectionManager2.java:474)
      at org.jboss.resource.connectionmanager.CachedConnectionManager.reconnect(CachedConnectionManager.java:332)
      at org.jboss.resource.connectionmanager.CachedConnectionManager.pushMetaAwareObject(CachedConnectionManager.java:135)
      at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.storeEntity(CachedConnectionInterceptor.java:346)
      at org.jboss.ejb.EntityContainer.storeEntity(EntityContainer.java:705)
      at org.jboss.ejb.GlobalTxEntityMap.syncEntities(GlobalTxEntityMap.java:99)
      at org.jboss.ejb.EntityContainer.synchronizeEntitiesWithinTransaction(EntityContainer.java:172)
      at org.jboss.ejb.EntityContainer.findLocal(EntityContainer.java:604)
      at java.lang.reflect.Method.invoke(Native Method)
      at org.jboss.ejb.EntityContainer$ContainerInterceptor.invokeHome(EntityContainer.java:1111)
      at org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInterceptor.java:73)
      at org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invokeHome(EntitySynchronizationInterceptor.java:230)
      at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invokeHome(CachedConnectionInterceptor.java:176)
      at org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityInstanceInterceptor.java:134)
      at org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome(EntityLockInterceptor.java:79)
      at org.jboss.ejb.plugins.EntityCreationInterceptor.invokeHome(EntityCreationInterceptor.java:44)
      at org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInterceptor.java:73)
      at org.jboss.ejb.plugins.MetricsInterceptor.invokeHome(MetricsInterceptor.java:106)
      at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:98)
      at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:167)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.java:52)
      at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInterceptor.java:104)
      at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:109)
      at org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:487)
      at org.jboss.ejb.plugins.local.BaseLocalContainerInvoker.invokeHome(BaseLocalContainerInvoker.java:227)
      at org.jboss.ejb.plugins.local.LocalHomeProxy.invoke(LocalHomeProxy.java:110)
      at $Proxy161.findByContainerMap(Unknown Source)

      Please help.

      Thanks.