Uploaded image for project: 'WildFly Transaction Client'
  1. WildFly Transaction Client
  2. WFTC-61

Failure to connect when dealing with transactions should return XAER_RMFAIL even for rollback

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 1.0.6.Final, 1.1.4.Final
    • 1.0.5.Final, 1.1.3.Final
    • None

    Description

      When a connection failure happen during XAResource.commit or XAResource.rollback then such failure should be considered by transaction manager as an intermittent failure that could be corrected after connection is restored.

      XAResource informs the transaction manager about severity of the failure by XAException error codes (https://javaee.github.io/javaee-spec/javadocs/javax/transaction/xa/XAException.html). The spec says that XAER_RMERR means unspecified failure that is uknown for the transaction manager and needs to be (usually) corrected by user. That means that a transaction with such failure goes to heuristics. To having the attempt to be retried the error code should be XAER_RMFAIL (or XA_RETRY).

      This issue was already dealt at WFTC-24 but it was managed only for commit. Here we need to do the same for the rollback and probably for prepare too.

      
      

      Attachments

        Issue Links

          Activity

            People

              ochaloup@redhat.com Ondrej Chaloupka (Inactive)
              ochaloup@redhat.com Ondrej Chaloupka (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: