Re: XA support

From: Oliver Jowett <oliver(at)opencloud(dot)com>
To: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: XA support
Date: 2005-06-29 22:19:00
Message-ID: 42C31E54.20000@opencloud.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Heikki Linnakangas wrote:

> B. When the second transaction starts, the first transaction is prepared
> behind the scenes, freeing the connection for the new transaction.

This is probably the way to go initially, since it's much simpler. It
should also deal with the more common uses of XA where you're just
coordinating 2 or more resources in an otherwise straightforward
begin-do stuff-commit sequence. We can get clever later :)

Related issues: supporting this case:

xaRes.start(xid1, XAResource.TMNOFLAGS);
stmt.executeUpdate("...");
xaRes.end(xid1, XAResource.TMSUSPEND);
// ...
xaRes.start(xid1, XAResource.TMRESUME);
stmt.executeUpdate("...");
xaRes.end(xid1, XAResource.TMSUCCESS);

and this one:

xaRes.start(xid1, XAResource.TMNOFLAGS);
stmt.executeUpdate("...");
xaRes.end(xid1, XAResource.TMSUCCESS);
// ...
xaRes.start(xid1, XAResource.TMJOIN);
stmt.executeUpdate("...");
xaRes.end(xid1, XAResource.TMSUCCESS);

and this one (yow!):

(thread 1):
xaRes.start(xid1, XAResource.TMNOFLAGS);
stmt.executeUpdate("...");

(thread 2):
xaRes.start(xid1, XAResource.TMJOIN);
stmt.executeUpdate("...");

-O

In response to

  • XA support at 2005-06-29 19:49:51 from Heikki Linnakangas

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Oliver Jowett 2005-06-29 22:24:06 Re: jdbc cts final diff for review
Previous Message John Sidney-Woollett 2005-06-29 21:41:18 UNSUBSCRIBE