[jbossts-issues] [JBoss JIRA] (JBTM-2983) Commit failure in WFLY LocalResource does not return error to the caller
Ondra Chaloupka (JIRA)
issues at jboss.org
Tue Jan 16 03:57:00 EST 2018
Ondra Chaloupka created JBTM-2983:
-------------------------------------
Summary: Commit failure in WFLY LocalResource does not return error to the caller
Key: JBTM-2983
URL: https://issues.jboss.org/browse/JBTM-2983
Project: JBoss Transaction Manager
Issue Type: Bug
Components: JTA
Affects Versions: 5.7.1.Final
Reporter: Ondra Chaloupka
Assignee: Ondra Chaloupka
Priority: Critical
In case that an exception is thrown during one-phase commit of non-XA transaction participant the error is swallowed and not returned to the caller. When tested with WFLY the excpetion is shown in the log, the commit fails but the client thinks that everything worked well.
The relevant part of the exception stacktrace when error on commit occurs is
{code}
at com.mysql.jdbc.ConnectionImpl.commit(ConnectionImpl.java:1549)
at org.jboss.jca.adapters.jdbc.local.LocalManagedConnection.commit(LocalManagedConnection.java:96)
at org.jboss.jca.core.tx.jbossts.LocalXAResourceImpl.commit(LocalXAResourceImpl.java:172)
at com.arjuna.ats.internal.jta.resources.arjunacore.XAOnePhaseResource.commit(XAOnePhaseResource.java:120)
at com.arjuna.ats.internal.arjuna.abstractrecords.LastResourceRecord.topLevelPrepare(LastResourceRecord.java:152)
at com.arjuna.ats.arjuna.coordinator.AbstractRecord.topLevelOnePhaseCommit(AbstractRecord.java:428)
at com.arjuna.ats.arjuna.coordinator.BasicAction.onePhaseCommit(BasicAction.java:2386)
at com.arjuna.ats.arjuna.coordinator.BasicAction.End(BasicAction.java:1497)
{code}
It seems that there is issue at
https://github.com/jbosstm/narayana/blob/master/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/resources/arjunacore/XAOnePhaseResource.java#L164
which does say something about recovery but for one phase nonXA there will be no recovery.
The decision that the {{XAOnePhaseResource}} is used for the txn work is done at
https://github.com/jbosstm/narayana/blob/master/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/TransactionImple.java#L792
where depending how the setup of {{jtaEnvironmentBean.setLastResourceOptimisationInterfaceClassName}} was done. This is done in WFLY at
https://github.com/wildfly/wildfly/blob/master/transactions/src/main/java/org/jboss/as/txn/service/JTAEnvironmentBeanService.java#L60
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
More information about the jbossts-issues
mailing list