[jbossts-issues] [JBoss JIRA] (JBTM-2780) JTS recovery does not process commit when connection is halt during 2PC
Ondra Chaloupka (JIRA)
issues at jboss.org
Tue Oct 25 15:26:00 EDT 2016
Ondra Chaloupka created JBTM-2780:
Summary: JTS recovery does not process commit when connection is halt during 2PC
Project: JBoss Transaction Manager
Issue Type: Bug
Reporter: Ondra Chaloupka
Attachments: .jts_haltConnectionAfterDbCommits_server.log.syntax, haltConnectionAfterDbCommits_standalone-full.xml
I experience wrong behavior of JTS implementation in following test scenario. This seems to be a regression against behavior of recovery for 7.0.0.GA.
# there is two jboss eap 7.1.0.DR6 servers used. First deploys MDB and does periodic recovery. Second is used only as a Artemis messaging broker.
# first app server receives a message via MDB #onMessage from artemis broker (second eap server)
# during onMessage processing a enw message is send to different remote queue on artemis broker
# testing XA resource is enlisted to txn
# prepare phase passes for all 3 resources - mdb inbound, outbound queue, test xa resource
# connection to the second server is halt at time when commit message of MDB resource is sent to artemis broker but the confirmation is not delivered back to TM
# commit of MDB as xa resource and outbound queue as resource fail - XAException.XA_RETRY is returned
# the test XAResource is committed
# recovery starts work and log shows that XAResourceRecord.commit is called at some point of time but the real commit on the XAResource is not done and transaction is rolled back at the end
The expected behavior (and what I can observe for JTA as well) is that recovery process should commit the outbound connection resource (MDB resource should be committed just not confirmed back from artemis broker to TM).
This message was sent by Atlassian JIRA
More information about the jbossts-issues