[jbossts-issues] [JBoss JIRA] (JBTM-2614) JCA TransactionImporter should be thread safe

Michael Musgrove (JIRA) issues at jboss.org
Thu Jan 28 10:26:00 EST 2016

     [ https://issues.jboss.org/browse/JBTM-2614?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Michael Musgrove updated JBTM-2614:
        Status: Resolved  (was: Pull Request Sent)
    Resolution: Done

> JCA TransactionImporter should be thread safe
> ---------------------------------------------
>                 Key: JBTM-2614
>                 URL: https://issues.jboss.org/browse/JBTM-2614
>             Project: JBoss Transaction Manager
>          Issue Type: Bug
>          Components: JCA
>    Affects Versions: 5.2.12.Final
>            Reporter: Michael Musgrove
>            Assignee: Michael Musgrove
>             Fix For: 5.next
> I have a unit test that shows there's a race condition (first observed by [~dmlloyd]) in com.arjuna.ats.internal.jta.transaction.arjunacore.jca.TransactionImporterImple#importTransaction(javax.transaction.xa.Xid, int).
> If two threads call this method at the same time, two separate transaction objects may be created.  Here's the sequence of events:
> T1: call importTransaction for XID1
> T2: call importTransaction for XID1
> T1: getImportedTransaction returns null
> T2: getImportedTransaction returns null
> T1: create new transaction, add to map
> T2: create new transaction, add to map (overwriting T1's)
> There is nothing in the documentation to indicate that this is not a valid situation or that access to the TransactionImporter has to be single-threaded in any way.

This message was sent by Atlassian JIRA

More information about the jbossts-issues mailing list