Uploaded image for project: 'Geronimo'
  1. Geronimo
  2. GERONIMO-4461

Improve exception during transaction manager one phase commit

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.1.4, 2.2
    • 2.1.4, 2.2
    • transaction manager
    • Security Level: public (Regular issues)
    • None

    Description

      Currently, during transaction manager one phase commit, if there is XAException arise from XAResource.commit, the code just throws RollbackException.

      We should provide a more detailed Exceptions, that is:

      1. If the XAException is XAException.XA_HEURRB, we throw HeuristicRollbackException, and call XAResource to forget
      2. If the XAException is XAException.XA_HEURMIX, we throw HeuristicMixedException, and call XAResource to forget
      3. If the XAException is XAException.XA_HEURCOM, we don't need to inform the transaction originator, but we want to call XAResource to forget.
      4. Other XAException, throw RollbackException, same as the current code.

      Thoughts?

      Lin

      Attachments

        Activity

          People

            linsun Lin Sun
            linsun Lin Sun
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: