> > The subordinate transactions (on server2 and server3) call commit() on
> > their datasources and return their votes to the main coordinator. The
> > coordinator based on the votes takes a heuristic decision on what to do
> > about the completion of this transaction. If there were no errors
> > reported, the TM decides to complete the commit heuristically. So, it does
> > not throw any exceptions, but tries to tell all the subordinates to
> > forget() the transaction. This indicated that the last request (commit())
> > was accepted by everybody and everybody can now forget about this
> > transaction.
>
> I don't see how this can work. What happens if one of the subtransactions
> fails? I would have thought that the originator would need to use some
> kind of two-phase protocol to make sure that all of the subtransactions
> are prepared successfully before asking any of them to commit.
My mistake, of course it calles prepare() and gets the votes then calls
the commit() and makes a heuristic decision on whether to finish off with
forget() or to rollback() and then forget(). I am not currently looking at
the Tyrex source and I am not a transaction specialist myself, so I don't
remember all the details off hand.
Sorry for skipping the prepare() phase. Tyrex is fully standard
compliant. The 2pc commit happens as it supposed. The problem arises with
the XAResource not expecting the forget() after a successful
commit() on the minerva resource.
> > I can't forget something I did not really know :)
> > Again, I am quite new to this stuff.
>
> As am I. Have you contacted the Tyrex people about this?
I don't think it is a Tyrex issue. I'll probably get in touch with them,
though. We have cleared a few other bugs in Tyrex while I was working on
the integration. Maybe they have something to say about this, after all
they've recommended minerva on their mailing list as far as I can
remember.
>
> Toby.
>
Anatoly.
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development