Hi,

> > Tyrex upon getting successful commits from the XAResources, being in 2pc
> > sets heuristic to COMMIT and asks the XAResources to forget() the
> > transaction.
>
> I don't understand what JTA is talking about with "heuristic" this and
> that.  It seems like a mechanism for dealing with strange situations or
> something.

As far as I know (from Oracle 2PC) the heuristic stuff is needed
to handle errors inbetween the 2 phases of commit, i.e. when 3
resources are to be committed, the TM asks them to do the 1st
phase and waits for the outcome; assume the request comes through
to all three (distributed) resources, all of them can commit
after a while, but one of them can't report back success or failure
because of a broken network, that lasts for a long time. The TM
can't finalize the transaction, the resources remain locked.
With help of the heuristics administrators then are able to
finalize 'by hand'. Depending on the heuristics, if any
indicates rollback, all resources must roll back even when
they were able to commit locally in the 1st phase. Only when
all heuristics indicate commit, the resources may simply
forget the pending transaction, thus giving up locks, freeing
rollback buffers and finalizing the already done local commit.

regards
Georg
 ___   ___
| + | |__    Georg Rehfeld      Woltmanstr. 12     20097 Hamburg
|_|_\ |___   [EMAIL PROTECTED]           +49 (40) 23 53 27 10



_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to