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

Transaction recovery broken for resource adapter

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.0.1
    • 2.0.2, 2.1
    • transaction manager
    • Security Level: public (Regular issues)
    • None
    • GA version of Geronimo 2.0.1 running under Windows XP on Intel machine

    • Regression

    Description

      An external JMS Resource adapter is installed into Geronimo.

      XA connections configured on the JMS resource adapter are used by a container managed session EJB to connect and put a message onto two different remote resource manager queues. Both resource managers XA resources receive a preprere call and respond rc=0, ie ok.

      The first resource manager is called to commit and it does so ok.

      The second resource manager is called to commit at which point we kill the Geronimo server process before the commit is processed.

      After restarting the Geronimo server process recover is called on all XA connections, the second resource manager responds to the recover call with the indoubt transaction Xid but instead of the required commit call we receive a rollback call - since the first resource manager has committed the second resource manager must also be called to commit.

      This problem was introduced into the Geronimo code base between M6-rc1 and 2.0.1 as the transaction recovery scenario described worked fine in M6-rc1

      Attachments

        Activity

          People

            kevan Kevan Lee Miller
            vaughton Matthew Vaughton
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: