I change simple-stateless and simple-stateful examples to reproduce
this issue.
Jean-Louis
-----Message d'origine-----
De : Jean-Louis MONTEIRO (JIRA) [mailto:[email protected]]
Envoyé : lundi 6 juillet 2009 16:02
À : Monteiro Jean-Louis
Objet : [jira] Created: (OPENEJB-1049) Stateful session cache
management issue
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
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.
Ce message et les pièces jointes sont confidentiels et réservés à
l'usage exclusif de ses destinataires. Il peut également être
protégé par le secret professionnel. Si vous recevez ce message par
erreur, merci d'en avertir immédiatement l'expéditeur et de le
détruire. L'intégrité du message ne pouvant être assurée sur
Internet, la responsabilité du groupe Atos Origin ne pourra être
recherchée quant au contenu de ce message. Bien que les meilleurs
efforts soient faits pour maintenir cette transmission exempte de
tout virus, l'expéditeur ne donne aucune garantie à cet égard et sa
responsabilité ne saurait être recherchée pour tout dommage
résultant d'un virus transmis.
This e-mail and the documents attached are confidential and intended
solely for the addressee; it may also be privileged. If you receive
this e-mail in error, please notify the sender immediately and
destroy it. As its integrity cannot be secured on the Internet, the
Atos Origin group liability cannot be triggered for the message
content. Although the sender endeavours to maintain a computer
virus-
free network, the sender does not warrant that this transmission is
virus-free and will not be liable for any damages resulting from any
virus transmitted.