You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by "Kevan Miller (JIRA)" <ji...@apache.org> on 2007/09/23 00:01:50 UTC

[jira] Resolved: (GERONIMO-3477) Transaction recovery broken for resource adapter

     [ https://issues.apache.org/jira/browse/GERONIMO-3477?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kevan Miller resolved GERONIMO-3477.
------------------------------------

       Resolution: Fixed
    Fix Version/s: 2.1
                   2.0.2
       Regression: [Regression]

The transaction log wasn't being read properly. This function was regressed by some code restructuring which occurred between M2 and 2.0. 

Thanks for catching this. If you could verify, that the problem is fixed and close this issue, that would be great. 

You can download a 2.0.2-SNAPSHOT server binary from:

http://people.apache.org/repo/m2-snapshot-repository/org/apache/geronimo/assemblies/geronimo-tomcat6-jee5/2.0.2-SNAPSHOT/geronimo-tomcat6-jee5-2.0.2-20070922.184612-1-bin.zip
or
http://people.apache.org/repo/m2-snapshot-repository/org/apache/geronimo/assemblies/geronimo-jetty6-jee5/2.0.2-SNAPSHOT/geronimo-jetty6-jee5-2.0.2-20070922.184612-1-bin.zip

> Transaction recovery broken for resource adapter
> ------------------------------------------------
>
>                 Key: GERONIMO-3477
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-3477
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: transaction manager
>    Affects Versions: 2.0.1
>         Environment: GA version of Geronimo 2.0.1 running under Windows XP on Intel machine
>            Reporter: Matthew Vaughton
>            Assignee: Kevan Miller
>             Fix For: 2.0.2, 2.1
>
>
> 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

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.