[jbossts-issues] [JBoss JIRA] (JBTM-3216) Narrow the default recovery configuration in the jbossts-properties.xml files

Ondrej Chaloupka (Jira) issues at jboss.org
Tue Oct 29 12:54:00 EDT 2019


    [ https://issues.jboss.org/browse/JBTM-3216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13805729#comment-13805729 ] 

Ondrej Chaloupka commented on JBTM-3216:
----------------------------------------

To summarize the available orphan filters in the Narayana code base, they are:

XAResourceOrphanFilter (com.arjuna.ats.jta.recovery)

{{JTANodeNameXAResourceOrphanFilter (com.arjuna.ats.internal.jta.recovery.arjunacore)}} - **it works only for JTA**, otherwise ABSTAIN (JTS is not processed as JTS does not work with orphan filters (https://issues.jboss.org/browse/JBTM-2124)). If JTA it checks if the {{Xid}}'s nodename matches the node id defined at the Narayana TM (This is required, otherwise TM may start to rollback transaction which should be committed by different TM instance.). For the node name checki it calls directly the {{NodeNameXAResourceOrphanFilter}}
{{NodeNameXAResourceOrphanFilter (com.arjuna.ats.internal.jta.recovery.arjunacore)}} - verifies that the {{Xid}} was created with this current Narayana TM by checking the node id of the TM. It's called by {{JTANodeNameXAResourceOrphanFilter}}
{{InboundBridgeRecoveryManager (org.jboss.jbossts.txbridge.inbound)}} - only for XTS
{{JTATransactionLogXAResourceOrphanFilter (com.arjuna.ats.internal.jta.recovery.arjunacore)}} - **it works only for JTA**, otherwise ABSTAIN. If the there is a log record in the object store then abstaining to rollback this remote {{Xid}}. If there is a object store record then we expect the Xid will be committed by top-down processing or it's heuristics and it can be roll-back neither.
{{SubordinationManagerXAResourceOrphanFilter (com.arjuna.ats.internal.jta.recovery.arjunacore)}} - **it works only for JTA**, otherwise ABSTAIN. If the subordinate transaction is in-flight then it forces for it not being rolled-back.
{{InboundBridgeOrphanFilter (org.jboss.narayana.rest.bridge.inbound)}} - only for XTS. Checks if there is no log record in the object store for not rolling-back an transaction which is expected to be commited during top-down recovery.
{{JTAActionStatusServiceXAResourceOrphanFilter (com.arjuna.ats.internal.jta.recovery.arjunacore)}} - **it works only for JTA**, otherwise ABSTAIN. It vetoes roll-back when there is an in-flight transaction for the found {{Xid}}.
{{SubordinateJTAXAResourceOrphanFilter (com.arjuna.ats.internal.jta.recovery.arjunacore)}} - checks if the TM as subordinate TM is responsible for this transaction (the {{Xid}} subordinate matches with the TM node identifier). If the TM is responsible and there is no transaction log in the object store then it's considered the remote {{Xid}} is subordinate orphaned and it's rolled-back.


> Narrow the default recovery configuration in the jbossts-properties.xml files
> -----------------------------------------------------------------------------
>
>                 Key: JBTM-3216
>                 URL: https://issues.jboss.org/browse/JBTM-3216
>             Project: JBoss Transaction Manager
>          Issue Type: Enhancement
>          Components: Configuration, JTA, JTS
>    Affects Versions: 5.10.0.Final
>            Reporter: Ondrej Chaloupka
>            Assignee: Ondrej Chaloupka
>            Priority: Minor
>
> There is default configuration for Narayana provided in XML files {{jbossts-properties.xml}}. They are part of the released jar files (they can be found at `META-INF` directory).
> These configuration files are different depending on the artifact. For example configuration defined in {{jbossts-properties.xml}} for JTS is different from JTA version - e.g. recovery modules are different and so.
> The configurations should be a bit narrowed to use better defaults. The discussion about this topic is at https://developer.jboss.org/message/991332



--
This message was sent by Atlassian Jira
(v7.13.8#713008)


More information about the jbossts-issues mailing list