[DB-SIG] Optional DB API Extensions

Matthew T. Kromer matt@zope.com
Fri, 26 Oct 2001 08:23:06 -0400


On Friday, October 26, 2001, at 01:14 AM, Stuart Bishop wrote:
>
> What methods would transaction coordination and distributed two-phase 
> commit require?

I think there's two or three methods involved.  One is setTransactionID, 
of which a variant is setTransactionXID, which is a portable 
transactionID (or some such -- anyway, there's a portable and 
non-portable transaction ID format in Oracle, with the portable one 
being an ANSI standard, I think).  The second/third is a 
database.prepare() mechanism to initiate the prepare phase of the 
two-phase commit.  I don't recall at the moment if the transaction ID is 
applied to statement handles or connections, but I would presume it's 
applied to connections.

Of course, once you can set a transaction ID, its fairly reasonable to 
expect the application to wish to query it again, so a get operation (or 
two) would be required.