[jbossts-issues] [JBoss JIRA] (JBTM-3325) Create a way to close XAResource at the end of the recovery cycle processing

Ondrej Chaloupka (Jira) issues at jboss.org
Tue Jun 2 11:35:02 EDT 2020


Ondrej Chaloupka created JBTM-3325:
--------------------------------------

             Summary: Create a way to close XAResource at the end of the recovery cycle processing
                 Key: JBTM-3325
                 URL: https://issues.redhat.com/browse/JBTM-3325
             Project: JBoss Transaction Manager
          Issue Type: Enhancement
          Components: JTA
    Affects Versions: 5.10.5.Final
            Reporter: Ondrej Chaloupka
            Assignee: Ondrej Chaloupka


>From discussions about Narayana integration to Agroal (https://agroal.github.io/) there came an idea how to make easier for Agroal to integrate with Narayana recovery processing.

Usually (or at least Agroal does so) the brand new {{XAResource}} is provided from the call of the {{XAResourceRecovery}} (https://github.com/jbosstm/jboss-transaction-spi/blob/7.6.0.Final/src/main/java/org/jboss/tm/XAResourceRecovery.java#L51).
aka. Agroal implements the {{XAResourceRecovery}} and register it with the Narayana with adding it to with https://github.com/jbosstm/jboss-transaction-spi/blob/7.6.0.Final/src/main/java/org/jboss/tm/XAResourceRecoveryRegistry.java to be used in {{XARecoveryModule}}.

When the periodic recovery cycle ends the {{XAResource}} is not used (next time the recovery processing calls the {{XAResourceRecovery#getXAResources()}} to get the resource for scanning again). The transaction manager announces that the scan ended with call {{XAResource.recover(XAResource.TMENDRSCAN)}} (this is an internal to how Narayana works).

It would be beneficial provide an option that Narayana closes {{XAResource}}s at the end of the recovery cycle when Narayana does not plan to use it again.

The idea is to check if the {{XAResource}} is {{AutoCloseable}} and if so then the {{XAResource}} is closed at the end of the recovery cycle processing.



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


More information about the jbossts-issues mailing list