[jbossts-issues] [JBoss JIRA] (JBTM-3239) Failing AfterLRA participant calls are not repeated with recovery module
Martin Stefanko (Jira)
issues at jboss.org
Wed Jan 8 05:04:15 EST 2020
[ https://issues.redhat.com/browse/JBTM-3239?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13941360#comment-13941360 ]
Martin Stefanko edited comment on JBTM-3239 at 1/8/20 5:04 AM:
---------------------------------------------------------------
I would propose to move the afterLRA recovery module handling (meaning the repetition of a failed AfterLRA invocation in the previous run of the recovery module) solely to the LRARecord. However, there are a few questions on how to handle it:
* is the participant in the status Completed/Compensated when the Complete/Compensate returns a successful response but there is an AfterLRA method? In other words, when is the participant truly Completed/Compensated? Is it including a successful AfterLRA call?
* because of https://issues.redhat.com/browse/JBTM-3228 I think the best solution would be to add a boolean field stating whether afterLRA should be called and/or forget should be called. As both of these methods will be called after the participant "ends" (Complete/Compensate returns a successful response)
* Please note that we will then be returning HEURISTIC_HAZARD for unsuccessful afterLRA (and forget) calls so we need to make sure that these methods are handled before the execution continues to the actual logic handling this H_H in Completing/Compensating states.
[~mmusgrov], [~tomjenkinson], [~ochaloup]
was (Author: mstefank):
I would propose to move the afterLRA handling solely to the LRARecord. However, there are a few questions on how to handle it:
* is the participant in the status Completed/Compensated when the Complete/Compensate returns a successful response but there is an AfterLRA method? In other words, when is the participant truly Completed/Compensated? Is it including a successful AfterLRA call?
* because of https://issues.redhat.com/browse/JBTM-3228 I think the best solution would be to add a boolean field stating whether afterLRA should be called and/or forget should be called. As both of these methods will be called after the participant "ends" (Complete/Compensate returns a successful response)
* Please note that we will then be returning HEURISTIC_HAZARD for unsuccessful afterLRA (and forget) calls so we need to make sure that these methods are handled before the execution continues to the actual logic handling this H_H in Completing/Compensating states.
[~mmusgrov], [~tomjenkinson], [~ochaloup]
> Failing AfterLRA participant calls are not repeated with recovery module
> ------------------------------------------------------------------------
>
> Key: JBTM-3239
> URL: https://issues.redhat.com/browse/JBTM-3239
> Project: JBoss Transaction Manager
> Issue Type: Bug
> Components: LRA
> Affects Versions: 5.10.1.Final
> Reporter: Martin Stefanko
> Assignee: Martin Stefanko
> Priority: Major
>
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
More information about the jbossts-issues
mailing list