[jbossts-issues] [JBoss JIRA] (JBTM-918) TXBridge Demo: SynchronizationImple.afterCompletion failed due to IllegalStateException

Jonathan Halliday (Commented) (JIRA) jira-events at lists.jboss.org
Mon Nov 7 04:31:45 EST 2011


    [ https://issues.jboss.org/browse/JBTM-918?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12640659#comment-12640659 ] 

Jonathan Halliday commented on JBTM-918:
----------------------------------------


"public void putResource(Object key, Object value): Add or replace an object in the map of resources being managed for the transaction bound to the current thread at the time this method is called."

Since afterCompletion is called *after* the tx has completed, the thread tx context is undefined. It's not reasonable for the jpa to use petResource in such case. JPA bug, not tx bug.

                
> TXBridge Demo: SynchronizationImple.afterCompletion failed due to IllegalStateException
> ---------------------------------------------------------------------------------------
>
>                 Key: JBTM-918
>                 URL: https://issues.jboss.org/browse/JBTM-918
>             Project: JBoss Transaction Manager
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>    Affects Versions: 4.15.3
>         Environment: AS 7 master @ 2011-10-06 15:00:00 
>            Reporter: Paul Robinson
>            Assignee: Paul Robinson
>             Fix For: 4.15.4, 5.0.0.M2
>
>
> To reproduce:
> 0. Get AS 7 master older than 2011-10-06 15:00:00
> 1. Deploy TXBridge demo client and service
> 2. Visit: http://localhost:8080/txbridge-demo-client/
> 3. Click "Submit Booking"
> Observe:
> {code}
> 14:58:12,899 WARN  [com.arjuna.ats.jta] (TaskWorker-3) ARJUNA16029: SynchronizationImple.afterCompletion - failed for org.jboss.as.jpa.transaction.TransactionUtil$SessionSynchronization at 259f1b1d with exception: java.lang.IllegalStateException
> 	at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionSynchronizationRegistryImple.getTransactionImple(TransactionSynchronizationRegistryImple.java:225) [jbossjts-4.15.3.Final.jar:]
> 	at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionSynchronizationRegistryImple.putResource(TransactionSynchronizationRegistryImple.java:103) [jbossjts-4.15.3.Final.jar:]
> 	at org.jboss.as.jpa.transaction.TransactionUtil.putEntityManagerInTransactionRegistry(TransactionUtil.java:195)
> 	at org.jboss.as.jpa.transaction.TransactionUtil.access$100(TransactionUtil.java:48)
> 	at org.jboss.as.jpa.transaction.TransactionUtil$SessionSynchronization.afterCompletion(TransactionUtil.java:220)
> 	at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.afterCompletion(SynchronizationImple.java:117) [jbossjts-4.15.3.Final.jar:]
> 	at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.afterCompletion(TwoPhaseCoordinator.java:403) [jbossjts-4.15.3.Final.jar:]
> 	at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.afterCompletion(TwoPhaseCoordinator.java:335) [jbossjts-4.15.3.Final.jar:]
> 	at com.arjuna.ats.internal.jta.transaction.arjunacore.subordinate.SubordinateAtomicAction.doCommit(SubordinateAtomicAction.java:176) [jbossjts-4.15.3.Final.jar:]
> 	at com.arjuna.ats.internal.jta.transaction.arjunacore.subordinate.TransactionImple.doCommit(TransactionImple.java:158) [jbossjts-4.15.3.Final.jar:]
> 	at com.arjuna.ats.internal.jta.transaction.arjunacore.jca.XATerminatorImple.commit(XATerminatorImple.java:87) [jbossjts-4.15.3.Final.jar:]
> 	at org.jboss.jbossts.txbridge.inbound.BridgeDurableParticipant.commit(BridgeDurableParticipant.java:204) [jbosstxbridge-4.15.3.Final.jar:]
> 	at com.arjuna.wst11.messaging.engines.ParticipantEngine.executeCommit(ParticipantEngine.java:577) [jbossxts-4.15.3.Final.jar:]
> 	at com.arjuna.wst11.messaging.engines.ParticipantEngine.commit(ParticipantEngine.java:149) [jbossxts-4.15.3.Final.jar:]
> 	at com.arjuna.wst11.messaging.ParticipantProcessorImpl.commit(ParticipantProcessorImpl.java:99) [jbossxts-4.15.3.Final.jar:]
> 	at com.arjuna.webservices11.wsat.sei.ParticipantPortTypeImpl$2.executeTask(ParticipantPortTypeImpl.java:84) [jbossxts-4.15.3.Final.jar:]
> 	at com.arjuna.services.framework.task.TaskWorker.run(TaskWorker.java:63) [jbossxts-4.15.3.Final.jar:]
> 	at java.lang.Thread.run(Thread.java:679) [:1.6.0_22]
> {code}
> Full server.log is attached.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jbossts-issues mailing list