[
https://issues.apache.org/jira/browse/OPENEJB-1049?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jean-Louis MONTEIRO updated OPENEJB-1049:
-----------------------------------------
Attachment: patch-SimpleCache.txt
Small changes done to simple-stateless and simple-stateful to reproduce this
problem
> Stateful session cache management issue
> ---------------------------------------
>
> Key: OPENEJB-1049
> URL: https://issues.apache.org/jira/browse/OPENEJB-1049
> Project: OpenEJB
> Issue Type: Bug
> Affects Versions: 3.1.1
> Reporter: Jean-Louis MONTEIRO
> Attachments: patch-SimpleCache.txt
>
> Original Estimate: 0h
> Remaining Estimate: 0h
>
> SimpleCache throws an error during check in.
> ERROR - An unexpected system exception occured while invoking the
> afterCompletion method on the SessionSynchronization object
> java.lang.IllegalStateException: The entry
> d52b726a0e36ac50:-3f5aa6df:122503062bb:-8000 is not checked-out
> at
> org.apache.openejb.core.stateful.SimpleCache.checkIn(SimpleCache.java:219)
> at
> org.apache.openejb.core.stateful.StatefulContainer.releaseInstance(StatefulContainer.java:659)
> at
> org.apache.openejb.core.stateful.StatefulContainer.access$2(StatefulContainer.java:646)
> at
> org.apache.openejb.core.stateful.StatefulContainer$SessionSynchronizationCoordinator.afterCompletion(StatefulContainer.java:940)
> at
> org.apache.openejb.core.transaction.JtaTransactionPolicy$1.afterCompletion(JtaTransactionPolicy.java:155)
> at
> org.apache.geronimo.transaction.manager.TransactionImpl.afterCompletion(TransactionImpl.java:534)
> at
> org.apache.geronimo.transaction.manager.TransactionImpl.afterCompletion(TransactionImpl.java:526)
> at
> org.apache.geronimo.transaction.manager.TransactionImpl.commit(TransactionImpl.java:326)
> at
> org.apache.geronimo.transaction.manager.TransactionManagerImpl.commit(TransactionManagerImpl.java:245)
> at
> org.apache.openejb.core.transaction.JtaTransactionPolicy.completeTransaction(JtaTransactionPolicy.java:291)
> at
> org.apache.openejb.core.transaction.TxRequired.commit(TxRequired.java:71)
> at
> org.apache.openejb.core.transaction.EjbTransactionUtil.afterInvoke(EjbTransactionUtil.java:74)
> at
> org.apache.openejb.core.stateless.StatelessContainer._invoke(StatelessContainer.java:241)
> at
> org.apache.openejb.core.stateless.StatelessContainer.invoke(StatelessContainer.java:174)
> at
> org.apache.openejb.core.ivm.EjbObjectProxyHandler.businessMethod(EjbObjectProxyHandler.java:217)
> at
> org.apache.openejb.core.ivm.EjbObjectProxyHandler._invoke(EjbObjectProxyHandler.java:77)
> at
> org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:281)
> at $Proxy10.sum(Unknown Source)
> at
> org.superbiz.calculator.CalculatorTest.testCalculatorViaRemoteInterface(CalculatorTest.java:51)
> 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:585)
> at junit.framework.TestCase.runTest(TestCase.java:164)
> at junit.framework.TestCase.runBare(TestCase.java:130)
> at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:120)
> at junit.framework.TestSuite.runTest(TestSuite.java:228)
> at junit.framework.TestSuite.run(TestSuite.java:223)
> at
> org.junit.internal.runners.OldTestClassRunner.run(OldTestClassRunner.java:35)
> at
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:46)
> at
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
> WARN - Unexpected exception from afterCompletion; continuing
> java.lang.RuntimeException: An unexpected system exception occured while
> invoking the afterCompletion method on the SessionSynchronization object
> at
> org.apache.openejb.core.stateful.StatefulContainer$SessionSynchronizationCoordinator.afterCompletion(StatefulContainer.java:962)
> at
> org.apache.openejb.core.transaction.JtaTransactionPolicy$1.afterCompletion(JtaTransactionPolicy.java:155)
> at
> org.apache.geronimo.transaction.manager.TransactionImpl.afterCompletion(TransactionImpl.java:534)
> at
> org.apache.geronimo.transaction.manager.TransactionImpl.afterCompletion(TransactionImpl.java:526)
> at
> org.apache.geronimo.transaction.manager.TransactionImpl.commit(TransactionImpl.java:326)
> at
> org.apache.geronimo.transaction.manager.TransactionManagerImpl.commit(TransactionManagerImpl.java:245)
> at
> org.apache.openejb.core.transaction.JtaTransactionPolicy.completeTransaction(JtaTransactionPolicy.java:291)
> at
> org.apache.openejb.core.transaction.TxRequired.commit(TxRequired.java:71)
> at
> org.apache.openejb.core.transaction.EjbTransactionUtil.afterInvoke(EjbTransactionUtil.java:74)
> at
> org.apache.openejb.core.stateless.StatelessContainer._invoke(StatelessContainer.java:241)
> at
> org.apache.openejb.core.stateless.StatelessContainer.invoke(StatelessContainer.java:174)
> at
> org.apache.openejb.core.ivm.EjbObjectProxyHandler.businessMethod(EjbObjectProxyHandler.java:217)
> at
> org.apache.openejb.core.ivm.EjbObjectProxyHandler._invoke(EjbObjectProxyHandler.java:77)
> at
> org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:281)
> at $Proxy10.sum(Unknown Source)
> at
> org.superbiz.calculator.CalculatorTest.testCalculatorViaRemoteInterface(CalculatorTest.java:51)
> 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:585)
> at junit.framework.TestCase.runTest(TestCase.java:164)
> at junit.framework.TestCase.runBare(TestCase.java:130)
> at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:120)
> at junit.framework.TestSuite.runTest(TestSuite.java:228)
> at junit.framework.TestSuite.run(TestSuite.java:223)
> at
> org.junit.internal.runners.OldTestClassRunner.run(OldTestClassRunner.java:35)
> at
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:46)
> at
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
> Caused by: java.lang.IllegalStateException: The entry
> d52b726a0e36ac50:-3f5aa6df:122503062bb:-8000 is not checked-out
> at
> org.apache.openejb.core.stateful.SimpleCache.checkIn(SimpleCache.java:219)
> at
> org.apache.openejb.core.stateful.StatefulContainer.releaseInstance(StatefulContainer.java:659)
> at
> org.apache.openejb.core.stateful.StatefulContainer.access$2(StatefulContainer.java:646)
> at
> org.apache.openejb.core.stateful.StatefulContainer$SessionSynchronizationCoordinator.afterCompletion(StatefulContainer.java:940)
> ... 34 more
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.