Hi,
"Jung , Dr. Christoph" wrote:
> >However, be aware that it would perform slightly slower,
> >as the TM at commit time would have to enlist the
> >resource with the TX before delisting it with TMSUCCESS.
>
> But I think that the advantage of being able to reuse the pooled resource
> is higher than the overhead which would IMHO (do not know the full
> implications of a resume
> on an arbitrary XA connection) be neclectable against the following
> prepare/commit stuff.
Since not specified in JTA it depends on the resource
implementation, but in most cases (including resources
based on OTS/JTS and X/Open DTP) no network calls are
involved for a suspend or resume. In most (all?) cases
the extra start(TMRESUME) will just be a local method
call to the resource for flagging that it is now
associated with an Xid.
> >Basically, I think that JTA contradicts itself, as it
> >says that (on page 41) that a suspended resource _must_
> >be resumed with TMRESUME, but the state tables on page
> >17-18 say that it is legal to do end(TMSUCCESS) on a
> >suspended resource.
>
> >The reason that I implemented TxCapsule as JTA says on
> >page 41 is that Minerva didn't like two end() calls in
> >a row.
>
> Hmm, if we would adopt the (reasonable) state table from page 17-18
> as the ultimate spec (all those fuzzy words, bah!), this would mean
> that we have to change Minverva, don�t we?
Problem is, I do not even trust the state table that much.
For example, it says that to do start(TMJOIN) the resource
_must_ be in a suspended state. But IMO it makes sense to
be able to get a new resource and call start(TMJOIN) on it
(with an Xid seen be the RM, of course) without first
creating a new dummy Xid for doing start() followed by
end(TMSUSPEND) to get the resource into the state that the
state table requires. The pseudocode in section 3.4.9 also
seems to support this (though the two dots after the first
opening curly brace _could_ include checking the state and
returning false if the resource is in state T0).
IMHO, JTA is not very well written.
In most cases you can lookup OTS or DTP to see what the JTA
writers mean, but the suspend/resume on resources is
specific to JTA so ambiguities here are not easily resolved.
> In the meantime, I think that your strategy to resume/end(TMSUCCESS) is
> fine.
To be as conformant as possible with all possible
interpretations of JTA, we should probably keep it that
way.
Best Regards,
Ole Husgaard.
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development