[jbossts-issues] [JBoss JIRA] (JBTM-2812) Retain a log if a forget call on a resource fails

Michael Musgrove (JIRA) issues at jboss.org
Wed Dec 7 05:47:00 EST 2016


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

Michael Musgrove updated JBTM-2812:
-----------------------------------
    Description: When we clear a heuristic from XAResourceRecord we call forget on the resource and then delete the record even if the forget operation fails. The preferred behaviour is to retain the record if the forget fails so that it can be reported via our tooling and so that we still have the option of later retrying the forget operation (also via the tooling).  (was: During abort processing (in BasicAction) we attempt to forgetHeuristics and then remove the participant log. The fix for JBTM-2728 changed this behaviour such that the log is retained if the resource forget operation fails. This is a change in behaviour and needs to be reverted.

Note that the resource will still eventually be told to forget during normal recovery processing for orphans (provided we have configured presumed abort semantics):

# our XARecoveryModule asks the resource for its pending branches (via the xa_recover() peration);
# if the xid is one of ours and if we no longer have a record for it then we call rollback on it presumed abort);
# the reosource uses the rollback call to tell us that the branch was already heuristically rolled back so we call forget)


> Retain a log if a forget call on a resource fails
> -------------------------------------------------
>
>                 Key: JBTM-2812
>                 URL: https://issues.jboss.org/browse/JBTM-2812
>             Project: JBoss Transaction Manager
>          Issue Type: Bug
>          Components: JTA
>    Affects Versions: 5.4.0.Final
>            Reporter: Michael Musgrove
>            Assignee: Michael Musgrove
>             Fix For: 5.next
>
>
> When we clear a heuristic from XAResourceRecord we call forget on the resource and then delete the record even if the forget operation fails. The preferred behaviour is to retain the record if the forget fails so that it can be reported via our tooling and so that we still have the option of later retrying the forget operation (also via the tooling).



--
This message was sent by Atlassian JIRA
(v7.2.3#72005)


More information about the jbossts-issues mailing list