[jbossts-issues] [JBoss JIRA] Commented: (JBTM-849) registerSynchronization fails with from status message

Jonathan Halliday (JIRA) jira-events at lists.jboss.org
Tue May 31 05:07:01 EDT 2011


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

Jonathan Halliday commented on JBTM-849:
----------------------------------------

per the JTA spec, interposed Synchronizations must be called after non-interposed ones. Since hibernate is (probably) using interposed Synchronizations, the tx has already passed the point at which it can call non-interposed Synchronizations. Therefore it does not allow them to be registered, on the basis that there needs to be some way to spot that they are not going to get called, otherwise you'd spend hours scratching your head and wondering why the Synchronization was not getting invoked.

The status is correct. The prepare phase comes after beforeCompletion, otherwise it would be called duringCompletion :-)

> registerSynchronization fails with from status message
> ------------------------------------------------------
>
>                 Key: JBTM-849
>                 URL: https://issues.jboss.org/browse/JBTM-849
>             Project: JBoss Transaction Manager
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: JTA
>    Affects Versions: 4.15.1
>         Environment: https://github.com/jbossejb3/jboss-as/tree/991e836c1bcb6b471010c5930fc3f58e72ed7972
>            Reporter: Carlo de Wolf
>         Attachments: JBTM-849-stracktrace.txt
>
>
> registerSynchronization is called from within a beforeCompletion of another Synchronization. I would expect the status to be PREPARING (or anything but RUNNING).
> {noformat}
> java.lang.IllegalStateException: Synchronizations are not allowed! Transaction status isActionStatus.RUNNING
> 	at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.registerSynchronizationImple(TransactionImple.java:367)
> 	at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.registerSynchronization(TransactionImple.java:344)
> 	at org.jboss.jca.core.connectionmanager.transaction.TransactionSynchronizer.getRegisteredSynchronizer(TransactionSynchronizer.java:198)
> 	at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:210)
> 	at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:407)
> 	... 104 more
> {noformat}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jbossts-issues mailing list