[jbossts-issues] [JBoss JIRA] (JBTM-1614) XA delist with TMFAIL flag
Tom Jenkinson (JIRA)
jira-events at lists.jboss.org
Mon Jun 3 06:49:55 EDT 2013
[ https://issues.jboss.org/browse/JBTM-1614?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tom Jenkinson resolved JBTM-1614.
Stuarts fix was merged for M3
> XA delist with TMFAIL flag
> Key: JBTM-1614
> URL: https://issues.jboss.org/browse/JBTM-1614
> Project: JBoss Transaction Manager
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: JTA
> Affects Versions: 4.2.3, 4.3.0.GA, 5.0.0.M2
> Environment: Fedora 18, Oracle 11 JDBC XAResource, JDK 1.5 & 1.6
> Reporter: Stuart Wheater
> Assignee: Tom Jenkinson
> Priority: Minor
> Fix For: 5.0.0.M3
> The scenario was as follows:
> enlist jms xaresource
> do some work
> delist jms xaresource
> enlist jdbc xaresource
> do some work which results in a failure(inserting NULL into a non null column for example)
> delist jdbc xaresource with TMFAIL flag.
> call tm.rollback()
> During rollback, an exception in XARerource.end() as follows: oracle.jdbc.xa.OracleXAException with error code=-3
> It appears that end is called, in rollback, although already been called in delist.
> I think the resolution is to change, endAssociation of narayana-full-5.0.0.M2src/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/resources/arjunacore/XAResourceRecord.java from:
> if (_theTransaction.getXAResourceState(_theXAResource) == TxInfo.NOT_ASSOCIATED)
> int txInfo = _theTransaction.getXAResourceState(_theXAResource);
> if ((txInfo == TxInfo.NOT_ASSOCIATED) || (txInfo == TxInfo.FAILED))
> This fix works for JBossTS 4.2.3 and JBossTS 4.3, haven't been able test it Narayana 5.0.0.M2 yet, as Fedora 18 doesn't seem to be a supported build/test environment.
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jbossts-issues