mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-01-30 19:00:29 +08:00
2162 lines
109 KiB
Plaintext
2162 lines
109 KiB
Plaintext
From pgsql-hackers-owner+M49851=pgman=candle.pha.pa.us@postgresql.org Sat Feb 7 10:33:51 2004
|
||
Return-path: <pgsql-hackers-owner+M49851=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id i17HXbr05526
|
||
for <pgman@candle.pha.pa.us>; Sat, 7 Feb 2004 12:33:50 -0500 (EST)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.2])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 0FDCBD1D8A0
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Wed, 4 Feb 2004 20:22:23 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (neptune.hub.org [200.46.204.2]) (amavisd-new, port 10024)
|
||
with ESMTP id 35031-10
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Wed, 4 Feb 2004 16:22:21 -0400 (AST)
|
||
Received: from main.gmane.org (main.gmane.org [80.91.224.249])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id D9726D1D85F
|
||
for <pgsql-hackers@postgresql.org>; Wed, 4 Feb 2004 16:22:20 -0400 (AST)
|
||
Received: from list by main.gmane.org with local (Exim 3.35 #1 (Debian))
|
||
id 1AoTXQ-0006tA-00
|
||
for <pgsql-hackers@postgresql.org>; Wed, 04 Feb 2004 21:22:20 +0100
|
||
Received: from kosh.hut.fi ([130.233.228.10])
|
||
by main.gmane.org with esmtp (Gmexim 0.1 (Debian))
|
||
id 1AlnuQ-0007hv-00
|
||
for <pgsql-hackers@postgresql.org>; Wed Feb 4 20:22:20 2004
|
||
Received: from hlinnaka by kosh.hut.fi with local (Gmexim 0.1 (Debian))
|
||
id 1AlnuQ-0007hv-00
|
||
for <pgsql-hackers@postgresql.org>; Wed Feb 4 20:22:20 2004
|
||
X-Injected-Via-Gmane: http://gmane.org/
|
||
To: pgsql-hackers@postgresql.org
|
||
From: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
Subject: [HACKERS] Two-phase commit
|
||
Date: Wed, 4 Feb 2004 22:22:16 +0200
|
||
Lines: 30
|
||
Message-ID: <Pine.OSF.4.58.0402042200330.238747@kosh.hut.fi>
|
||
MIME-Version: 1.0
|
||
Content-Type: TEXT/PLAIN; charset=US-ASCII
|
||
X-Complaints-To: usenet@sea.gmane.org
|
||
X-Gmane-NNTP-Posting-Host: kosh.hut.fi
|
||
X-X-Sender: hlinnaka@kosh.hut.fi
|
||
X-Virus-Scanned: by amavisd-new at postgresql.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: ORr
|
||
|
||
I've been very slowly continuing my work on two-phase commits for a couple
|
||
months now, and I now have my original patch updated so that it applies to
|
||
the current CVS tip, with some improvements.
|
||
|
||
The patch introduces three new commands, PREPCOMMIT, COMMITPREPARED and
|
||
ABORTPREPARED.
|
||
|
||
To start a 2PC transaction, you first do a BEGIN and your updates as
|
||
usual. At the end of the transaction, you call PREPCOMMIT 'foobar' instead
|
||
of COMMIT. Now the transaction is in prepared state, ready to commit at a
|
||
later time. 'foobar' is the global transaction identifier assigned for the
|
||
transaction.
|
||
|
||
Later, when you want to finish the second phase, you call
|
||
COMMITPREPARED 'foobar';
|
||
|
||
There is a system view pg_prepared_xacts that gives you all transactions
|
||
that are in prepared state waiting for COMMITPREPARED or ABORTPREPARED.
|
||
|
||
I have also done some work on XA-enabling the JDBC drivers, now that we
|
||
have what it takes in the server side. I have succesfully executed
|
||
2PC transactions with JBossMQ and Postgres, using JBoss as the
|
||
transaction manager, so the basic stuff seems to be working.
|
||
|
||
Please have a look and comment, the patches can be found here:
|
||
http://www.iki.fi/hlinnaka/pgsql/
|
||
|
||
What is the schedule for 7.5? Any chance of getting this in?
|
||
|
||
- Heikki
|
||
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 3: if posting/reading through Usenet, please send an appropriate
|
||
subscribe-nomail command to majordomo@postgresql.org so that your
|
||
message can get through to the mailing list cleanly
|
||
|
||
From pgsql-hackers-owner+M50166=pgman=candle.pha.pa.us@postgresql.org Sun Feb 15 14:10:46 2004
|
||
Return-path: <pgsql-hackers-owner+M50166=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id i1FLAir14581
|
||
for <pgman@candle.pha.pa.us>; Sun, 15 Feb 2004 16:10:45 -0500 (EST)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.2])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 297AAD1CAF3
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Mon, 9 Feb 2004 20:09:53 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (neptune.hub.org [200.46.204.2]) (amavisd-new, port 10024)
|
||
with ESMTP id 07202-01
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Mon, 9 Feb 2004 16:09:37 -0400 (AST)
|
||
Received: from smtp-4.hut.fi (smtp-4.hut.fi [130.233.228.94])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 90D81D1C4BC
|
||
for <pgsql-hackers@postgresql.org>; Mon, 9 Feb 2004 16:09:34 -0400 (AST)
|
||
Received: from kosh.hut.fi (kosh.hut.fi [130.233.228.10])
|
||
by smtp-4.hut.fi (8.12.10/8.12.10) with ESMTP id i19K9Y66012417;
|
||
Mon, 9 Feb 2004 22:09:34 +0200
|
||
Date: Mon, 9 Feb 2004 22:09:34 +0200 (EET)
|
||
From: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
X-X-Sender: hlinnaka@kosh.hut.fi
|
||
To: "Jeroen T. Vermeulen" <jtv@xs4all.nl>
|
||
cc: PostgreSQL Development <pgsql-hackers@postgresql.org>
|
||
Subject: Re: [HACKERS] Two-phase commit
|
||
In-Reply-To: <20040208195332.GE25140@xs4all.nl>
|
||
Message-ID: <Pine.OSF.4.58.0402092201460.226205@kosh.hut.fi>
|
||
References: <Pine.OSF.4.58.0402042200330.238747@kosh.hut.fi>
|
||
<20040208195332.GE25140@xs4all.nl>
|
||
MIME-Version: 1.0
|
||
Content-Type: TEXT/PLAIN; charset=US-ASCII
|
||
X-RAVMilter-Version: 8.4.3(snapshot 20030212) (smtp-4.hut.fi)
|
||
X-Virus-Scanned: by amavisd-new at postgresql.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: OR
|
||
|
||
On Sun, 8 Feb 2004, Jeroen T. Vermeulen wrote:
|
||
|
||
> On Wed, Feb 04, 2004 at 10:22:16PM +0200, Heikki Linnakangas wrote:
|
||
>
|
||
> > There is a system view pg_prepared_xacts that gives you all transactions
|
||
> > that are in prepared state waiting for COMMITPREPARED or ABORTPREPARED.
|
||
>
|
||
> Great to hear that you've gotten so far with this... One question: can I
|
||
> check for this view to see if 2PC is supported before issuing the new
|
||
> kind of commit? I'm interested in supporting 2PC even for some regular
|
||
> transactions to reduce their in-doubt window, but I don't want to issue a
|
||
> command at the last moment that may fail (and thereby abort) because the
|
||
> backend version I'm connected to doesn't support the new command!
|
||
|
||
Yes, I suppose that would work. Though you would have to use a query that
|
||
wouldn't fail in case the view doesn't exist, otherwise you end up
|
||
aborting the transaction anyway. This should work:
|
||
|
||
SELECT COUNT(*) FROM pg_views WHERE schemanem='pg_catalog' AND viewname
|
||
='pg_prepared_xacts'
|
||
|
||
If it returns 1, you can do 2PC, if it returns 0, you have to regular
|
||
commit.
|
||
|
||
However, if this gets into 7.5, I guess you could just check for the
|
||
version of the backend instead with "SELECT version()".
|
||
|
||
- Heikki
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 4: Don't 'kill -9' the postmaster
|
||
|
||
From pgsql-hackers-owner+M49946=pgman=candle.pha.pa.us@postgresql.org Mon Feb 9 14:18:20 2004
|
||
Return-path: <pgsql-hackers-owner+M49946=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id i19LIHr27947
|
||
for <pgman@candle.pha.pa.us>; Mon, 9 Feb 2004 16:18:18 -0500 (EST)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.2])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 5B8CBD1C9E1
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Mon, 9 Feb 2004 21:00:06 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (neptune.hub.org [200.46.204.2]) (amavisd-new, port 10024)
|
||
with ESMTP id 25216-09
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Mon, 9 Feb 2004 16:59:56 -0400 (AST)
|
||
Received: from smtp-out4.xs4all.nl (smtp-out4.xs4all.nl [194.109.24.5])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 0381AD1C4BC
|
||
for <pgsql-hackers@postgresql.org>; Mon, 9 Feb 2004 16:59:53 -0400 (AST)
|
||
Received: from xs1.xs4all.nl (xs1.xs4all.nl [194.109.21.2])
|
||
by smtp-out4.xs4all.nl (8.12.10/8.12.10) with ESMTP id i19Kw1Oh062440;
|
||
Mon, 9 Feb 2004 21:59:41 +0100 (CET)
|
||
Received: from xs1.xs4all.nl (jtv@localhost.xs4all.nl [127.0.0.1])
|
||
by xs1.xs4all.nl (8.12.10/8.12.9) with ESMTP id i19KuUBT033906;
|
||
Mon, 9 Feb 2004 21:56:30 +0100 (CET)
|
||
(envelope-from jtv@xs4all.nl)
|
||
Received: (from jtv@localhost)
|
||
by xs1.xs4all.nl (8.12.10/8.12.9/Submit) id i19KuUgt033905;
|
||
Mon, 9 Feb 2004 21:56:30 +0100 (CET)
|
||
(envelope-from jtv)
|
||
Date: Mon, 9 Feb 2004 21:56:30 +0100
|
||
From: "Jeroen T. Vermeulen" <jtv@xs4all.nl>
|
||
To: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
cc: PostgreSQL Development <pgsql-hackers@postgresql.org>
|
||
Subject: Re: [HACKERS] Two-phase commit
|
||
Message-ID: <20040209205629.GB13454@xs4all.nl>
|
||
Mail-Followup-To: Heikki Linnakangas <hlinnaka@iki.fi>,
|
||
PostgreSQL Development <pgsql-hackers@postgresql.org>
|
||
References: <Pine.OSF.4.58.0402042200330.238747@kosh.hut.fi> <20040208195332.GE25140@xs4all.nl> <Pine.OSF.4.58.0402092201460.226205@kosh.hut.fi>
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain; charset=us-ascii
|
||
Content-Disposition: inline
|
||
In-Reply-To: <Pine.OSF.4.58.0402092201460.226205@kosh.hut.fi>
|
||
User-Agent: Mutt/1.4.1i
|
||
X-Virus-Scanned: by amavisd-new at postgresql.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: OR
|
||
|
||
On Mon, Feb 09, 2004 at 10:09:34PM +0200, Heikki Linnakangas wrote:
|
||
>
|
||
> However, if this gets into 7.5, I guess you could just check for the
|
||
> version of the backend instead with "SELECT version()".
|
||
|
||
Hey, that works? That's very good news, because I was getting a bit
|
||
worried about all the things I want to do in libpqxx that may depend on
|
||
the Postgres version...
|
||
|
||
Thanks!
|
||
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 3: if posting/reading through Usenet, please send an appropriate
|
||
subscribe-nomail command to majordomo@postgresql.org so that your
|
||
message can get through to the mailing list cleanly
|
||
|
||
From pgsql-hackers-owner+M50540=pgman=candle.pha.pa.us@postgresql.org Sat Feb 28 14:40:52 2004
|
||
Return-path: <pgsql-hackers-owner+M50540=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id i1SLeoD13679
|
||
for <pgman@candle.pha.pa.us>; Sat, 28 Feb 2004 16:40:50 -0500 (EST)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.2])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id A0F5BD1E1AA
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Sun, 22 Feb 2004 02:27:19 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (neptune.hub.org [200.46.204.2]) (amavisd-new, port 10024)
|
||
with ESMTP id 92481-04
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Sat, 21 Feb 2004 22:27:18 -0400 (AST)
|
||
Received: from main.gmane.org (main.gmane.org [80.91.224.249])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 54A72D1E197
|
||
for <pgsql-hackers@postgresql.org>; Sat, 21 Feb 2004 22:27:11 -0400 (AST)
|
||
Received: from list by main.gmane.org with local (Exim 3.35 #1 (Debian))
|
||
id 1AujKe-0004i5-00
|
||
for <pgsql-hackers@postgresql.org>; Sun, 22 Feb 2004 03:27:00 +0100
|
||
Received: from kosh.hut.fi ([130.233.228.10])
|
||
by main.gmane.org with esmtp (Gmexim 0.1 (Debian))
|
||
id 1AlnuQ-0007hv-00
|
||
for <pgsql-hackers@postgresql.org>; Sun Feb 22 02:27:00 2004
|
||
Received: from hlinnaka by kosh.hut.fi with local (Gmexim 0.1 (Debian))
|
||
id 1AlnuQ-0007hv-00
|
||
for <pgsql-hackers@postgresql.org>; Sun Feb 22 02:27:00 2004
|
||
X-Injected-Via-Gmane: http://gmane.org/
|
||
To: pgsql-hackers@postgresql.org
|
||
From: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
Subject: Re: [HACKERS] Two-phase commit
|
||
Date: Sun, 22 Feb 2004 04:26:56 +0200
|
||
Lines: 70
|
||
Message-ID: <Pine.OSF.4.58.0402220324250.126984@kosh.hut.fi>
|
||
References: <Pine.OSF.4.58.0402042200330.238747@kosh.hut.fi>
|
||
<200402080138.i181cPl15259@candle.pha.pa.us>
|
||
MIME-Version: 1.0
|
||
Content-Type: TEXT/PLAIN; charset=US-ASCII
|
||
X-Complaints-To: usenet@sea.gmane.org
|
||
X-Gmane-NNTP-Posting-Host: kosh.hut.fi
|
||
X-X-Sender: hlinnaka@kosh.hut.fi
|
||
In-Reply-To: <200402080138.i181cPl15259@candle.pha.pa.us>
|
||
X-Virus-Scanned: by amavisd-new at postgresql.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: OR
|
||
|
||
On Sat, 7 Feb 2004, Bruce Momjian wrote:
|
||
|
||
> > Please have a look and comment, the patches can be found here:
|
||
> > http://www.iki.fi/hlinnaka/pgsql/
|
||
> >
|
||
> > What is the schedule for 7.5? Any chance of getting this in?
|
||
>
|
||
> 7.5 is certainly possible. We are months away from beta on 7.5 and I
|
||
> would like ot see two-phase commit included. One item that has come up
|
||
> in past discussions is a way of recording two-phase commit failures to
|
||
> the administrator in cases where you precommit, get a reply, commit,
|
||
> then the remote machine disappears.
|
||
|
||
You would resolve this by opening a new session, and checking if the gid
|
||
you specified in PREPARE TRANSACTION is still present in the
|
||
pg_prepared_xacts view. It could be done manually by the administrator, or
|
||
it could be done automatically by an external transaction manager if
|
||
there is one.
|
||
|
||
The XA interface specifies a function called "recover", that gives you a
|
||
list of pending transactions. If we some day have an XA implementation,
|
||
the recover call would map directly to "SELECT gid FROM
|
||
pg_prepared_xacts". The JDBC XA implementation that I'm working on does
|
||
that already.
|
||
|
||
I have updated my patches, see the URL above. I renamed the commands to
|
||
PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED. I think it's
|
||
more coherent that way.
|
||
|
||
I also added documentation entries for the commands, and a basic
|
||
regression test.
|
||
|
||
I went through all the AtCommit_* and AtEOXact* hooks in xact.c to find
|
||
any possible problem areas. The following items have not yet been
|
||
implemented and throw an error if you try to do 2PC in the same
|
||
transaction.
|
||
|
||
* Notifications (NOTIFY/LISTEN). All pending notifications should be
|
||
stored in persistent storage in the prepare phase, and sent in the commit
|
||
phase.
|
||
|
||
* Creation/deletion of relations. I couldn't figure out how the relation
|
||
cache invalidation stuff should work with 2PC.
|
||
|
||
* Modifying GUC variables. I need to study the GUC code more thoroughly
|
||
before I can tell what needs to be done.
|
||
|
||
* Updates to shadow/group files, that is, CREATE USER and friends. Needs
|
||
some tricks to delay the writing of pg_pwd/pg_group.
|
||
|
||
* Large objects. AFAICS, no particular problem here, but I'd like to deal
|
||
with them later when the more important stuff are ok.
|
||
|
||
Plus a couple of minor details:
|
||
|
||
* Temporary tables. The seem to work somehow, but I haven't tested them
|
||
much. I have a feeling that nasty things might happen if you commit the
|
||
prepared transaction from another backend etc.
|
||
|
||
* initdb gives a warning about a missing file. It's harmless, but I
|
||
don't see how to detect that you're running under initdb. Also, if you
|
||
try to prapare a transaction with a global transaction identifier that's
|
||
already in use, you first get a warning and then an error.
|
||
|
||
I'm going to tackle the above problems later, but I would like to get
|
||
this applied to the cvs trunk with the current functionality first, after
|
||
discussion of course. The rest are nice to have for the sake of
|
||
completeness but probably not necessary for most users.
|
||
|
||
- Heikki
|
||
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 5: Have you checked our extensive FAQ?
|
||
|
||
http://www.postgresql.org/docs/faqs/FAQ.html
|
||
|
||
From pgsql-general-owner+M58726=pgman=candle.pha.pa.us@postgresql.org Fri Mar 19 01:00:58 2004
|
||
Return-path: <pgsql-general-owner+M58726=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id i2J80ud15620
|
||
for <pgman@candle.pha.pa.us>; Fri, 19 Mar 2004 03:00:57 -0500 (EST)
|
||
X-Original-To: pgsql-general-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.2])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 53189D1BB74
|
||
for <pgsql-general-postgresql.org@localhost.postgresql.org>; Fri, 19 Mar 2004 07:31:13 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (neptune.hub.org [200.46.204.2]) (amavisd-new, port 10024)
|
||
with ESMTP id 87439-01
|
||
for <pgsql-general-postgresql.org@localhost.postgresql.org>;
|
||
Fri, 19 Mar 2004 03:31:05 -0400 (AST)
|
||
Received: from builder.localdomain (unknown [61.94.124.129])
|
||
by svr1.postgresql.org (Postfix) with SMTP id 12CC3D1B80B
|
||
for <pgsql-general@postgresql.org>; Fri, 19 Mar 2004 03:30:59 -0400 (AST)
|
||
Received: (qmail 11710 invoked from network); 19 Mar 2004 07:30:55 -0000
|
||
Received: from unknown (HELO zara.6.isreserved.com) (192.168.0.113)
|
||
by builder.localdomain with SMTP; 19 Mar 2004 07:30:55 -0000
|
||
Message-ID: <405AA1B0.3080600@zara.6.isreserved.com>
|
||
Date: Fri, 19 Mar 2004 14:30:56 +0700
|
||
From: David Garamond <lists@zara.6.isreserved.com>
|
||
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.6b) Gecko/20031208
|
||
X-Accept-Language: en-us, en
|
||
MIME-Version: 1.0
|
||
To: Matthew Hixson <hixson@poindextrose.org>
|
||
cc: pgsql-general@postgresql.org
|
||
Subject: Re: [GENERAL] two phase commit
|
||
References: <68FB14C4-7963-11D8-B6BA-000A95D05926@poindextrose.org>
|
||
In-Reply-To: <68FB14C4-7963-11D8-B6BA-000A95D05926@poindextrose.org>
|
||
Content-Type: text/plain; charset=us-ascii; format=flowed
|
||
Content-Transfer-Encoding: 7bit
|
||
X-Virus-Scanned: by amavisd-new at postgresql.org
|
||
X-Mailing-List: pgsql-general
|
||
Precedence: bulk
|
||
Sender: pgsql-general-owner@postgresql.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: OR
|
||
|
||
Matthew Hixson wrote:
|
||
> From what I can find with Google it looks like TPC might make it into
|
||
> Postgrs 7.5. I was wondering if there were any commercial products or
|
||
> open source projects that can provide TPC on top of Postgres. Or is
|
||
> this something that really needs to be handled by the database itself?
|
||
|
||
With the 2PC patch submitted, you can interface with it at the SQL level
|
||
(i.e. you prepare, commit, cancel prepare, etc. by issuing ordinary SQL
|
||
commands). This means it will be pretty trivial to make it work with
|
||
other components like TX manager, etc. For example, I'm guessing it will
|
||
be easy to add 2PC support to npgsql (.NET data provider).
|
||
|
||
PS: It's really nice to see Postgres coming along feature-wise. 2PC and
|
||
nested transaction (aside from native Windows port, of course) are the
|
||
main things Firebird has that Potsgres hasn't. After that, we can pretty
|
||
much leave FB in the dust... :-)
|
||
|
||
--
|
||
dave
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 3: if posting/reading through Usenet, please send an appropriate
|
||
subscribe-nomail command to majordomo@postgresql.org so that your
|
||
message can get through to the mailing list cleanly
|
||
|
||
From pgsql-hackers-owner+M51632@postgresql.org Tue Mar 23 10:18:06 2004
|
||
Return-path: <pgsql-hackers-owner+M51632@postgresql.org>
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id i2NHI0d16063
|
||
for <pgman@candle.pha.pa.us>; Tue, 23 Mar 2004 12:18:02 -0500 (EST)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.2])
|
||
by svr1.postgresql.org (Postfix) with ESMTP
|
||
id BFD64D1EBB0; Tue, 23 Mar 2004 16:11:15 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (neptune.hub.org [200.46.204.2]) (amavisd-new, port 10024)
|
||
with ESMTP id 35500-05; Tue, 23 Mar 2004 12:11:00 -0400 (AST)
|
||
Received: from smtp-4.hut.fi (smtp-4.hut.fi [130.233.228.94])
|
||
by svr1.postgresql.org (Postfix) with ESMTP
|
||
id 411C3D1E2D7; Tue, 23 Mar 2004 12:10:58 -0400 (AST)
|
||
Received: from kosh.hut.fi (kosh.hut.fi [130.233.228.10])
|
||
by smtp-4.hut.fi (8.12.10/8.12.10) with ESMTP id i2NGAZTZ028569;
|
||
Tue, 23 Mar 2004 18:10:45 +0200
|
||
Date: Tue, 23 Mar 2004 18:10:35 +0200 (EET)
|
||
From: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
X-X-Sender: hlinnaka@kosh.hut.fi
|
||
To: pgsql-hackers@postgresql.org
|
||
cc: pgsql-patches@postgresql.org
|
||
Subject: Re: [HACKERS] Two-phase commit
|
||
In-Reply-To: <Pine.OSF.4.58.0402220324250.126984@kosh.hut.fi>
|
||
Message-ID: <Pine.OSF.4.58.0403231758350.513267@kosh.hut.fi>
|
||
References: <Pine.OSF.4.58.0402042200330.238747@kosh.hut.fi>
|
||
<200402080138.i181cPl15259@candle.pha.pa.us> <Pine.OSF.4.58.0402220324250.126984@kosh.hut.fi>
|
||
MIME-Version: 1.0
|
||
Content-Type: MULTIPART/MIXED; BOUNDARY="182774146-1920606540-1080058235=:513267"
|
||
X-RAVMilter-Version: 8.4.3(snapshot 20030212) (smtp-4.hut.fi)
|
||
X-Virus-Scanned: by amavisd-new at postgresql.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: ORr
|
||
|
||
This message is in MIME format. The first part should be readable text,
|
||
while the remaining parts are likely unreadable without MIME-aware tools.
|
||
Send mail to mime@docserver.cac.washington.edu for more info.
|
||
|
||
--182774146-1920606540-1080058235=:513267
|
||
Content-Type: TEXT/PLAIN; charset=US-ASCII
|
||
|
||
I have again updated my two-phase commit patches. Only minor
|
||
modifications.
|
||
|
||
I haven't received any comments and there hasn't been any discussion on
|
||
the implementation, I suppose that nobody has given it a try. :(
|
||
|
||
There is still some rough edges, but I think it's good enough as a first
|
||
cut. I personally consider it ready to be applied to cvs tip, but then
|
||
again I'm still a newbie :). Please take a look!
|
||
|
||
The patch is also available here: http://www.iki.fi/hlinnaka/pgsql/
|
||
|
||
- Heikki
|
||
--182774146-1920606540-1080058235=:513267
|
||
Content-Type: APPLICATION/x-gzip; name="twophase_20040321.diff.gz"
|
||
Content-Transfer-Encoding: BASE64
|
||
Content-ID: <Pine.OSF.4.58.0403231810351.513267@kosh.hut.fi>
|
||
Content-Description:
|
||
Content-Disposition: attachment; filename="twophase_20040321.diff.gz"
|
||
|
||
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
|
||
|
||
--182774146-1920606540-1080058235=:513267
|
||
Content-Type: text/plain
|
||
Content-Disposition: inline
|
||
Content-Transfer-Encoding: 8bit
|
||
MIME-Version: 1.0
|
||
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 9: the planner will ignore your desire to choose an index scan if your
|
||
joining column's datatypes do not match
|
||
|
||
--182774146-1920606540-1080058235=:513267--
|
||
|
||
From pgsql-hackers-owner+M51641@postgresql.org Tue Mar 23 11:32:25 2004
|
||
Return-path: <pgsql-hackers-owner+M51641@postgresql.org>
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id i2NIWId29116
|
||
for <pgman@candle.pha.pa.us>; Tue, 23 Mar 2004 13:32:24 -0500 (EST)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.2])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 28F60D1EC42
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Tue, 23 Mar 2004 18:28:57 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (neptune.hub.org [200.46.204.2]) (amavisd-new, port 10024)
|
||
with ESMTP id 11478-09
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Tue, 23 Mar 2004 14:28:55 -0400 (AST)
|
||
Received: from alvh.no-ip.org (200.85.202.54.DSL.surnet.cl [200.85.202.54])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 7D042D1EC0D
|
||
for <pgsql-hackers@postgresql.org>; Tue, 23 Mar 2004 14:28:54 -0400 (AST)
|
||
Received: by alvh.no-ip.org (Postfix, from userid 500)
|
||
id 8877D5759D; Tue, 23 Mar 2004 13:28:43 -0500 (EST)
|
||
Date: Tue, 23 Mar 2004 14:28:43 -0400
|
||
From: Alvaro Herrera <alvherre@dcc.uchile.cl>
|
||
To: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
cc: pgsql-hackers@postgresql.org
|
||
Subject: Re: [HACKERS] Two-phase commit
|
||
Message-ID: <20040323182843.GF3863@dcc.uchile.cl>
|
||
References: <Pine.OSF.4.58.0402042200330.238747@kosh.hut.fi> <200402080138.i181cPl15259@candle.pha.pa.us> <Pine.OSF.4.58.0402220324250.126984@kosh.hut.fi> <Pine.OSF.4.58.0403231758350.513267@kosh.hut.fi>
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain; charset=us-ascii
|
||
Content-Disposition: inline
|
||
In-Reply-To: <Pine.OSF.4.58.0403231758350.513267@kosh.hut.fi>
|
||
User-Agent: Mutt/1.4.1i
|
||
X-Virus-Scanned: by amavisd-new at postgresql.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: ORr
|
||
|
||
On Tue, Mar 23, 2004 at 06:10:35PM +0200, Heikki Linnakangas wrote:
|
||
> I have again updated my two-phase commit patches. Only minor
|
||
> modifications.
|
||
>
|
||
> I haven't received any comments and there hasn't been any discussion on
|
||
> the implementation, I suppose that nobody has given it a try. :(
|
||
|
||
I haven't tried it, but I see it conflicts big time with my
|
||
modifications in access/transam/xact.c for subtransactions support.
|
||
|
||
I am currently writing a proposal for nested transactions which will go
|
||
to -hackers, and I will be posting some code to -patches shortly
|
||
thereafter which should give you an idea where I am heading. Maybe then
|
||
we can have the opinion from the devel community about both things,
|
||
whether they should be applied or not.
|
||
|
||
--
|
||
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
|
||
"El miedo atento y previsor es la madre de la seguridad" (E. Burke)
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 6: Have you searched our list archives?
|
||
|
||
http://archives.postgresql.org
|
||
|
||
From jtv@xs4all.nl Tue Jun 29 10:18:43 2004
|
||
Return-path: <jtv@xs4all.nl>
|
||
Received: from smtp-out3.xs4all.nl (smtp-out3.xs4all.nl [194.109.24.13])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id i5TEIeC19886
|
||
for <pgman@candle.pha.pa.us>; Tue, 29 Jun 2004 10:18:42 -0400 (EDT)
|
||
Received: from xs1.xs4all.nl (xs1.xs4all.nl [194.109.21.2])
|
||
by smtp-out3.xs4all.nl (8.12.10/8.12.10) with ESMTP id i5TEIcdQ066827;
|
||
Tue, 29 Jun 2004 16:18:38 +0200 (CEST)
|
||
Received: from xs1.xs4all.nl (jtv@localhost.xs4all.nl [127.0.0.1])
|
||
by xs1.xs4all.nl (8.12.10/8.12.10) with ESMTP id i5TEIcfr057746;
|
||
Tue, 29 Jun 2004 16:18:38 +0200 (CEST)
|
||
(envelope-from jtv@xs4all.nl)
|
||
Received: (from jtv@localhost)
|
||
by xs1.xs4all.nl (8.12.10/8.12.9/Submit) id i5TEIcD1057745;
|
||
Tue, 29 Jun 2004 16:18:38 +0200 (CEST)
|
||
(envelope-from jtv)
|
||
Date: Tue, 29 Jun 2004 16:18:38 +0200
|
||
From: "Jeroen T. Vermeulen" <jtv@xs4all.nl>
|
||
To: pgadmin@pse-consulting.de, Bruce Momjian <pgman@candle.pha.pa.us>
|
||
Subject: Two-phase commit
|
||
Message-ID: <20040629141837.GL56428@xs4all.nl>
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain; charset=us-ascii
|
||
Content-Disposition: inline
|
||
User-Agent: Mutt/1.4.1i
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: ORr
|
||
|
||
Hi Andreas, Bruce:
|
||
|
||
I briefly discussed this with both of you separately. The 2-phase-commit
|
||
patch that's being worked on has the shortcoming that the "supercommit"
|
||
is assumed to come over the same connection as the regular database
|
||
session, i.e. the transaction manager (the middleware that manages the
|
||
two-phase transaction across multibple databases etc.) also has to serve
|
||
as a proxy for the regular database session.
|
||
|
||
A "real" two-phase commit system has the two phases of the transaction
|
||
going over separate connections--one between application and database
|
||
server, one between middleware and database server. Andreas quite
|
||
sensibly asked me why; and the real answer only just popped back into
|
||
my head.
|
||
|
||
I think the real reason is the same reason why we want 2PC in the first
|
||
place. Connections may be lost _just_ when the middleware is sending out
|
||
second-phase commits to the various resource managers. In that case, it
|
||
is absolutely essential that the transaction manager be able to reconnect
|
||
to the resource manager (in this case, postgres) and continue where it
|
||
left off. A regular session can't do that, and that's exactly where the
|
||
2nd phase is being implemented right now.
|
||
|
||
The way the current patch does things is more like the Oracle model.
|
||
Oracle has a "prepare commit" command (which I think even makes more
|
||
sense for this approach than making things look like nested transactions).
|
||
However I'm told that Oracle builds on the assumption of a two-tier
|
||
system, and it doesn't work very well. If two-tier were good enough, then
|
||
I suspect you might as well use something like my robusttransaction class
|
||
which catches the special case of losing connection during commit, then
|
||
tries to reconnect and find out whether the commit went through or not.
|
||
|
||
As I mentioned to Bruce at FOSDEM last year, what I'd really need to get
|
||
that right (and the same goes for 2pc) I needed to be able to query the
|
||
transaction log in some way, to find out what happened to a transaction.
|
||
I've always assumed, and still believe, that what I did here was just a
|
||
hack to make the worst case a bit less likely. It's not what I would call
|
||
a solution to the atomicity problem.
|
||
|
||
On the other hand, of course, at least one traditional argument for 3-tier
|
||
setups doesn't apply to us: we don't need connection pooling on the
|
||
middleware just to keep the per-connection licensing cost down. :)
|
||
|
||
|
||
Jeroen
|
||
|
||
From pgsql-hackers-owner+M59934=pgman=candle.pha.pa.us@postgresql.org Tue Oct 12 15:27:20 2004
|
||
Return-path: <pgsql-hackers-owner+M59934=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from svr1.postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id i9CJRJp09792
|
||
for <pgman@candle.pha.pa.us>; Tue, 12 Oct 2004 15:27:19 -0400 (EDT)
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id E0D5B32AD90
|
||
for <pgman@candle.pha.pa.us>; Tue, 12 Oct 2004 20:27:15 +0100 (BST)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 89028-10 for <pgman@candle.pha.pa.us>;
|
||
Tue, 12 Oct 2004 19:27:14 +0000 (GMT)
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 524D832AC81
|
||
for <pgman@candle.pha.pa.us>; Tue, 12 Oct 2004 20:27:15 +0100 (BST)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 7B81632B6BE
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Thu, 7 Oct 2004 12:18:35 +0100 (BST)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 22385-04
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Thu, 7 Oct 2004 11:17:11 +0000 (GMT)
|
||
Received: from smtp-3.hut.fi (smtp-3.hut.fi [130.233.228.93])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 50FBE32B722
|
||
for <pgsql-hackers@postgresql.org>; Thu, 7 Oct 2004 12:16:45 +0100 (BST)
|
||
Received: from kosh.hut.fi (kosh.hut.fi [130.233.228.10])
|
||
by smtp-3.hut.fi (8.12.10/8.12.10) with ESMTP id i97BFicq021410;
|
||
Thu, 7 Oct 2004 14:15:45 +0300
|
||
Date: Thu, 7 Oct 2004 14:15:44 +0300 (EEST)
|
||
From: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
X-X-Sender: hlinnaka@kosh.hut.fi
|
||
To: Tom Lane <tgl@sss.pgh.pa.us>
|
||
cc: Heikki Linnakangas <hlinnaka@iki.fi>, pgsql-hackers@postgresql.org
|
||
Subject: Re: [HACKERS] Two-phase commit
|
||
In-Reply-To: <354.1097099170@sss.pgh.pa.us>
|
||
Message-ID: <Pine.OSF.4.61.0410071357420.432862@kosh.hut.fi>
|
||
References: <Pine.OSF.4.58.0402042200330.238747@kosh.hut.fi>
|
||
<200402080138.i181cPl15259@candle.pha.pa.us> <Pine.OSF.4.58.0402220324250.126984@kosh.hut.fi>
|
||
<Pine.OSF.4.58.0403231758350.513267@kosh.hut.fi> <354.1097099170@sss.pgh.pa.us>
|
||
MIME-Version: 1.0
|
||
Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
|
||
X-RAVMilter-Version: 8.4.3(snapshot 20030212) (smtp-3.hut.fi)
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: OR
|
||
|
||
On Wed, 6 Oct 2004, Tom Lane wrote:
|
||
|
||
> Quite some time ago, Heikki Linnakangas <hlinnaka@iki.fi> wrote:
|
||
>> I haven't received any comments and there hasn't been any discussion on
|
||
>> the implementation, I suppose that nobody has given it a try. :(
|
||
>
|
||
> I finally got around to taking a close look at this. There's a good bit
|
||
> undone, as you well know, but it seems like it can be the basis for a
|
||
> workable feature. I do have a few comments to make.
|
||
|
||
Great!
|
||
|
||
> At the API level, I like the PREPARE/COMMIT/ROLLBACK statements, but I
|
||
> think you have missed a bet in that it needs to be possible to issue
|
||
> "COMMIT PREPARED gid" for the same gid several times without error.
|
||
> Consider a scenario where the transaction monitor crashes during the
|
||
> commit phase. When it recovers, it will be aware that it had committed
|
||
> to commit, but it won't know which nodes were successfully committed.
|
||
> So it will need to resend the COMMIT commands. It would be bad for the
|
||
> nodes to simply say "yes boss" if they are told to COMMIT a gid they
|
||
> have no record of. So I think the gid's have to stick around after
|
||
> COMMIT PREPARED or ROLLBACK PREPARED, and there needs to be a fourth
|
||
> command (RELEASE PREPARED?) to actually remove the state data when the
|
||
> transaction monitor is satisfied that everything's done. RELEASE of
|
||
> an unknown gid is okay to be a no-op.
|
||
|
||
Hmm. I don't see a problem with the "yes boss" approach. Some kind of a
|
||
warning is appropriate, of course, but I don't see a reason for an
|
||
additional step. After all, you would still fall back to the "yes boss"
|
||
approach on the RELEASE PREPARED command.
|
||
|
||
The transaction monitor knows if the 1st phase succeeded or not, so if the
|
||
COMMIT PREPARED doesn't find the transaction anymore, the monitor knows
|
||
that it's previous commit/rollback succeeded.
|
||
|
||
> Implementation-wise, I really dislike storing the info in a shared hash
|
||
> table, because I don't see any reasonable bound on the size of the hash
|
||
> table (your existing code uses 100 which is about as arbitrary as it
|
||
> gets). Plus the actual content of each entry is not fixed-size either.
|
||
> This is not very workable given our fixed-size shared memory mechanism.
|
||
|
||
I fully agree, I'm very dissatisfied with that part.
|
||
|
||
> The idea that occurs to me instead is to not use WAL or shared memory at
|
||
> all for keeping the prepared-transaction state info. Instead, suppose
|
||
> that we store the status information in a file named after the GID,
|
||
> "$PGDATA/pg_twophase/gid". We could write the file with a CRC similarly
|
||
> to what's done for pg_control. Once such a file is written and fsync'd,
|
||
> it's equally as reliable as a WAL record would be, so it seems safe
|
||
> enough to me to report the PREPARE as done. COMMIT, ROLLBACK, and the
|
||
> pg_prepared_xacts system view would look into the pg_twophase directory
|
||
> to find out all about active prepared transactions; RELEASE PREPARED
|
||
> would simply delete the appropriate file. (Note: commit or rollback
|
||
> would need to take the transaction XID from the GID file and then look
|
||
> in pg_clog to find out if the transaction were already committed. These
|
||
> operations do not change the pg_twophase file, but they do write a
|
||
> normal transaction-commit or -abort WAL record and update pg_clog.)
|
||
|
||
That sounds like a clever idea! I thought about using a single file
|
||
myself, but the multi-file approach is much simpler.
|
||
|
||
> I think this would offer better performance as well as being more
|
||
> scalable, because the implementation you have looks like it would have
|
||
> some contention for the shared GID hashtable.
|
||
|
||
I guess the performance would depend a lot on how good/bad the filesystem
|
||
is at creating and deleting a lot of small files.
|
||
|
||
> I would be inclined to require GIDs to be numbers (probably int8's)
|
||
> instead of strings, so that we don't have any problems with funny
|
||
> characters in the file names. That's negotiable though, as we could
|
||
> certainly uuencode the strings or something to avoid that trap.
|
||
|
||
I'm afraid we have to support arbitrary strings. I think at least the Java
|
||
Transaction API requires that, I'm not sure though if that could be
|
||
worked around in the JDBC driver.
|
||
|
||
> You were concerned about how to mark prepared transactions in pg_clog,
|
||
> given that Alvaro had already commandeered state '11' for
|
||
> subtransactions. Since only a toplevel transaction can be prepared,
|
||
> it might work to allow state '11' with a zero pg_subtrans parent link
|
||
> to mean a prepared transaction. This would imply factoring prepared
|
||
> XIDs into GlobalXmin (so that pg_subtrans entries don't get recycled
|
||
> too soon) but we probably have to do that anyway. AFAICS, prepared
|
||
> but uncommitted XIDs have to be considered still InProgress, so if
|
||
> they are less than GlobalXmin we'd lose.
|
||
|
||
Yes, they must be considered InProgress. The snapshot code needs to be
|
||
modified to handle an arbitrary number of in progress transactions.
|
||
|
||
|
||
I've been thinking if it would be useful to have the COMMIT
|
||
PREPARED/ROLLBACK PREPARED commands under transaction control themselves.
|
||
You could for example do "BEGIN; COMMIT PREPARED mygid; COMMIT PREPARED
|
||
mygid2; COMMIT;" to atomically commit two already-prepared transactions,
|
||
and even chain the 2PC transactions like "BEGIN; COMMIT PREPARED mygid;
|
||
PREPARE TRANSACTION mygid2". It seems feasible to implement, just postpone
|
||
the actual 2nd phase commit to the end of the commit of the enclosing
|
||
transaction.
|
||
|
||
- Heikki
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 7: don't forget to increase your free space map settings
|
||
|
||
From pgsql-hackers-owner+M59924=pgman=candle.pha.pa.us@postgresql.org Tue Oct 12 15:25:43 2004
|
||
Return-path: <pgsql-hackers-owner+M59924=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from svr1.postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id i9CJPfp08866
|
||
for <pgman@candle.pha.pa.us>; Tue, 12 Oct 2004 15:25:42 -0400 (EDT)
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id C0C3D32BB7C
|
||
for <pgman@candle.pha.pa.us>; Tue, 12 Oct 2004 20:25:37 +0100 (BST)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 86781-07 for <pgman@candle.pha.pa.us>;
|
||
Tue, 12 Oct 2004 19:25:36 +0000 (GMT)
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 2F57A32BB46
|
||
for <pgman@candle.pha.pa.us>; Tue, 12 Oct 2004 20:25:37 +0100 (BST)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id B4BAD32A071
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Sat, 9 Oct 2004 12:48:23 +0100 (BST)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 38695-06
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Sat, 9 Oct 2004 11:48:09 +0000 (GMT)
|
||
Received: from smtp-3.hut.fi (smtp-3.hut.fi [130.233.228.93])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id A887832A4FE
|
||
for <pgsql-hackers@postgresql.org>; Sat, 9 Oct 2004 12:48:10 +0100 (BST)
|
||
Received: from kosh.hut.fi (kosh.hut.fi [130.233.228.10])
|
||
by smtp-3.hut.fi (8.12.10/8.12.10) with ESMTP id i99Bm9UD031611
|
||
for <pgsql-hackers@postgresql.org>; Sat, 9 Oct 2004 14:48:09 +0300
|
||
Date: Sat, 9 Oct 2004 14:48:09 +0300 (EEST)
|
||
From: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
X-X-Sender: hlinnaka@kosh.hut.fi
|
||
To: pgsql-hackers@postgresql.org
|
||
Subject: [HACKERS] Two-phase commit patch updated
|
||
In-Reply-To: <354.1097099170@sss.pgh.pa.us>
|
||
Message-ID: <Pine.OSF.4.61.0410091429320.339489@kosh.hut.fi>
|
||
References: <Pine.OSF.4.58.0402042200330.238747@kosh.hut.fi>
|
||
<200402080138.i181cPl15259@candle.pha.pa.us> <Pine.OSF.4.58.0402220324250.126984@kosh.hut.fi>
|
||
<Pine.OSF.4.58.0403231758350.513267@kosh.hut.fi> <354.1097099170@sss.pgh.pa.us>
|
||
MIME-Version: 1.0
|
||
Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
|
||
X-RAVMilter-Version: 8.4.3(snapshot 20030212) (smtp-3.hut.fi)
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: OR
|
||
|
||
I brought the 2PC patch up to date:
|
||
|
||
http://www.hut.fi/~hlinnaka/pgsql/
|
||
|
||
There's no new functionality, I just fixed all the bit rot so that it
|
||
applies to the current CVS tip.
|
||
|
||
- Heikki
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 2: you can get off all lists at once with the unregister command
|
||
(send "unregister YourEmailAddressHere" to majordomo@postgresql.org)
|
||
|
||
From pgsql-hackers-owner+M60193=pgman=candle.pha.pa.us@postgresql.org Wed Oct 20 11:43:40 2004
|
||
Return-path: <pgsql-hackers-owner+M60193=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from svr1.postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id i9KFhdf10906
|
||
for <pgman@candle.pha.pa.us>; Wed, 20 Oct 2004 11:43:40 -0400 (EDT)
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 6358632A158
|
||
for <pgman@candle.pha.pa.us>; Wed, 20 Oct 2004 16:43:37 +0100 (BST)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 60338-02 for <pgman@candle.pha.pa.us>;
|
||
Wed, 20 Oct 2004 15:43:36 +0000 (GMT)
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 01CF832A12A
|
||
for <pgman@candle.pha.pa.us>; Wed, 20 Oct 2004 16:43:37 +0100 (BST)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 0A2B932B107
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Wed, 20 Oct 2004 16:41:15 +0100 (BST)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 74851-10
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Wed, 20 Oct 2004 15:41:08 +0000 (GMT)
|
||
Received: from mailsrvr2.bull.com (mailsrvr2.bull.com [192.90.162.8])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 58BB532AF80
|
||
for <pgsql-hackers@postgresql.org>; Wed, 20 Oct 2004 16:41:07 +0100 (BST)
|
||
Received: from us-phx1.az05.bull.com (us-phx1.az05.bull.com [141.112.40.1])
|
||
by mailsrvr2.bull.com (8.13.1/8.13.1) with ESMTP id i9KFeskm013495
|
||
for <pgsql-hackers@postgresql.org>; Wed, 20 Oct 2004 08:40:54 -0700
|
||
To: pgsql-hackers@postgresql.org
|
||
Subject: [HACKERS] 2PC support
|
||
MIME-Version: 1.0
|
||
X-Mailer: Lotus Notes Release 6.5.1 January 21, 2004
|
||
Message-ID: <OFC4281B9F.ABCA4E46-ON07256F33.0054BD37-07256F33.00562470@us-phx1.az05.bull.com>
|
||
From: Michael.Giroux@objectweb.org
|
||
Date: Wed, 20 Oct 2004 08:40:53 -0700
|
||
X-MIMETrack: Serialize by Router on US-PHX1/US/BULL(Release 6.5.1|January 21, 2004) at
|
||
10/20/2004 08:40:54 AM,
|
||
Serialize complete at 10/20/2004 08:40:54 AM
|
||
Content-Type: text/plain; charset="US-ASCII"
|
||
X-BullServices-MailScanner-Information: Please contact the ISP for more information
|
||
X-BullServices-MailScanner: Not scanned: please contact your Internet E-Mail Service Provider for details
|
||
X-MailScanner-From: michael.giroux@objectweb.org
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
Status: OR
|
||
|
||
Hi,
|
||
I've read a few of the recent posts about 2-phase-commit support. I
|
||
noticed some discussion related to persisting the state of in-doubt
|
||
transactions, and thought you might be able to take advantage of work that
|
||
has been going on in the area of transaction logs.
|
||
|
||
I'm working on a project (howl.objectweb.org) to implement a journal
|
||
designed specifically to support transaction managers 2PC protocol. The
|
||
project was concieved during a meeting between ObjectWeb and Apache
|
||
Geronimo developers last year at ApacheCon 2003. The journal is currently
|
||
used by the Apache Geronimo TM, Codehaus ActiveMQ, and ObjectWeb JOTM
|
||
projects.
|
||
|
||
Although the main objective is to support TM 2PC protocol, it could be
|
||
used as a database before-image journal as well. The code is BSD
|
||
licensed. More at http://howl.objectweb.org.
|
||
|
||
Also, with respect to the requirements for the 2PC protocol, there is an
|
||
excellent discussion by Mike Spille. Mike wrote a series of articles
|
||
titled "XA Exposed". You can review the articles at
|
||
http://www.theserverside.com. Search for "xa exposed".
|
||
|
||
If any of you will be at ApacheCon 2004 next month, I'm giving a paper on
|
||
the HOWL journal. I'll be happy to talk with you there.
|
||
|
||
Michael Giroux, objectweb.org
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 3: if posting/reading through Usenet, please send an appropriate
|
||
subscribe-nomail command to majordomo@postgresql.org so that your
|
||
message can get through to the mailing list cleanly
|
||
|
||
From pgsql-hackers-owner+M63326=pgman=candle.pha.pa.us@postgresql.org Wed Jan 19 13:02:04 2005
|
||
Return-path: <pgsql-hackers-owner+M63326=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from svr1.postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id j0JJ23w15071
|
||
for <pgman@candle.pha.pa.us>; Wed, 19 Jan 2005 14:02:03 -0500 (EST)
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 86EA13A438A
|
||
for <pgman@candle.pha.pa.us>; Wed, 19 Jan 2005 19:02:00 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 39979-07 for <pgman@candle.pha.pa.us>;
|
||
Wed, 19 Jan 2005 19:01:58 +0000 (GMT)
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id DC7E53A4447
|
||
for <pgman@candle.pha.pa.us>; Wed, 19 Jan 2005 19:01:45 +0000 (GMT)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id E30A83A43DE
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Wed, 19 Jan 2005 18:59:59 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 39733-06
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Wed, 19 Jan 2005 18:59:49 +0000 (GMT)
|
||
Received: from smtp-3.hut.fi (smtp-3.hut.fi [130.233.228.93])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 83C883A42C9
|
||
for <pgsql-hackers@postgresql.org>; Wed, 19 Jan 2005 18:59:48 +0000 (GMT)
|
||
Received: from localhost (putosiko.hut.fi [130.233.228.114])
|
||
by smtp-3.hut.fi (8.12.10/8.12.10) with ESMTP id j0JIxkeL013491
|
||
for <pgsql-hackers@postgresql.org>; Wed, 19 Jan 2005 20:59:46 +0200
|
||
Received: from smtp-3.hut.fi ([130.233.228.93])
|
||
by localhost (putosiko.hut.fi [130.233.228.114]) (amavisd-new, port 10024)
|
||
with LMTP id 17639-01-10 for <pgsql-hackers@postgresql.org>;
|
||
Wed, 19 Jan 2005 20:59:45 +0200 (EET)
|
||
Received: from kosh.hut.fi (kosh.hut.fi [130.233.228.10])
|
||
by smtp-3.hut.fi (8.12.10/8.12.10) with ESMTP id j0JItvEJ011614
|
||
for <pgsql-hackers@postgresql.org>; Wed, 19 Jan 2005 20:55:57 +0200
|
||
Date: Wed, 19 Jan 2005 20:55:57 +0200 (EET)
|
||
From: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
X-X-Sender: hlinnaka@kosh.hut.fi
|
||
To: pgsql-hackers@postgresql.org
|
||
Subject: [HACKERS] Two-phase commit for 8.1
|
||
Message-ID: <Pine.OSF.4.61.0501192055310.62540@kosh.hut.fi>
|
||
MIME-Version: 1.0
|
||
Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
|
||
X-TKK-Virus-Scanned: by amavisd-new-2.1.2-hutcc at putosiko.hut.fi
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: OR
|
||
|
||
Hi,
|
||
|
||
Now that we got 8.0 out of the door, I'm submitting my two-phase commit patch
|
||
again for discussion.
|
||
|
||
http://www.hut.fi/~hlinnaka/pgsql/
|
||
|
||
Do we want it in 8.1, if we want a short development cycle? It needs a new
|
||
pg_twophase subdirectory, and it introduces a new system view, so I guess it
|
||
requires an initdb (or pg_upgrade).
|
||
|
||
Any comments on the implementation or the new commands?
|
||
|
||
I would appreciate help testing the JDBC driver with an application server that
|
||
does XA recovery properly.
|
||
|
||
- Heikki
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 2: you can get off all lists at once with the unregister command
|
||
(send "unregister YourEmailAddressHere" to majordomo@postgresql.org)
|
||
|
||
From pgsql-hackers-owner+M63328=pgman=candle.pha.pa.us@postgresql.org Wed Jan 19 15:00:49 2005
|
||
Return-path: <pgsql-hackers-owner+M63328=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from svr1.postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id j0JL0lw26408
|
||
for <pgman@candle.pha.pa.us>; Wed, 19 Jan 2005 16:00:47 -0500 (EST)
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id AA4F63A44F7
|
||
for <pgman@candle.pha.pa.us>; Wed, 19 Jan 2005 21:00:43 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 69508-07 for <pgman@candle.pha.pa.us>;
|
||
Wed, 19 Jan 2005 21:00:41 +0000 (GMT)
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 954C03A4493
|
||
for <pgman@candle.pha.pa.us>; Wed, 19 Jan 2005 21:00:42 +0000 (GMT)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id AEE2A3A4447
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Wed, 19 Jan 2005 20:59:06 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 69310-05
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Wed, 19 Jan 2005 20:58:55 +0000 (GMT)
|
||
Received: from hub.org (hub.org [200.46.204.220])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id BD0E03A43DA
|
||
for <pgsql-hackers@postgresql.org>; Wed, 19 Jan 2005 20:58:56 +0000 (GMT)
|
||
Received: from ganymede.hub.org (blk-224-186-245.eastlink.ca [24.224.186.245])
|
||
by hub.org (Postfix) with ESMTP id 864D2129256;
|
||
Wed, 19 Jan 2005 16:58:54 -0400 (AST)
|
||
Received: by ganymede.hub.org (Postfix, from userid 1000)
|
||
id B19BA5E34A; Wed, 19 Jan 2005 16:58:55 -0400 (AST)
|
||
Received: from localhost (localhost [127.0.0.1])
|
||
by ganymede.hub.org (Postfix) with ESMTP id AD3675DCBC;
|
||
Wed, 19 Jan 2005 16:58:55 -0400 (AST)
|
||
Date: Wed, 19 Jan 2005 16:58:55 -0400 (AST)
|
||
From: "Marc G. Fournier" <scrappy@postgresql.org>
|
||
X-X-Sender: scrappy@ganymede.hub.org
|
||
To: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
cc: pgsql-hackers@postgresql.org
|
||
Subject: Re: [HACKERS] Two-phase commit for 8.1
|
||
In-Reply-To: <Pine.OSF.4.61.0501192055310.62540@kosh.hut.fi>
|
||
Message-ID: <20050119165747.U47533@ganymede.hub.org>
|
||
References: <Pine.OSF.4.61.0501192055310.62540@kosh.hut.fi>
|
||
MIME-Version: 1.0
|
||
Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: OR
|
||
|
||
|
||
If the patch is ready to be committed early in the cycle, I'd say most
|
||
definitely ... just depends on how late in the cycle its ready ...
|
||
|
||
I *believe* that 8.1, we're looking at a 2mo cycle before beta, so figure
|
||
beta for ~April 1st (no april fools jokes, eh?) ...
|
||
|
||
On Wed, 19 Jan 2005, Heikki Linnakangas wrote:
|
||
|
||
> Hi,
|
||
>
|
||
> Now that we got 8.0 out of the door, I'm submitting my two-phase commit patch
|
||
> again for discussion.
|
||
>
|
||
> http://www.hut.fi/~hlinnaka/pgsql/
|
||
>
|
||
> Do we want it in 8.1, if we want a short development cycle? It needs a new
|
||
> pg_twophase subdirectory, and it introduces a new system view, so I guess it
|
||
> requires an initdb (or pg_upgrade).
|
||
>
|
||
> Any comments on the implementation or the new commands?
|
||
>
|
||
> I would appreciate help testing the JDBC driver with an application server
|
||
> that does XA recovery properly.
|
||
>
|
||
> - Heikki
|
||
>
|
||
> ---------------------------(end of broadcast)---------------------------
|
||
> TIP 2: you can get off all lists at once with the unregister command
|
||
> (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)
|
||
>
|
||
|
||
----
|
||
Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
|
||
Email: scrappy@hub.org Yahoo!: yscrappy ICQ: 7615664
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 5: Have you checked our extensive FAQ?
|
||
|
||
http://www.postgresql.org/docs/faqs/FAQ.html
|
||
|
||
From pgsql-hackers-owner+M63331=pgman=candle.pha.pa.us@postgresql.org Wed Jan 19 18:45:25 2005
|
||
Return-path: <pgsql-hackers-owner+M63331=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from svr1.postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id j0K0jOw15340
|
||
for <pgman@candle.pha.pa.us>; Wed, 19 Jan 2005 19:45:24 -0500 (EST)
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 40B203A45A5
|
||
for <pgman@candle.pha.pa.us>; Thu, 20 Jan 2005 00:45:20 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 91025-08 for <pgman@candle.pha.pa.us>;
|
||
Thu, 20 Jan 2005 00:45:16 +0000 (GMT)
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 46A8F3A459D
|
||
for <pgman@candle.pha.pa.us>; Thu, 20 Jan 2005 00:45:19 +0000 (GMT)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 042FE3A4340;
|
||
Thu, 20 Jan 2005 00:42:14 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 91212-03; Thu, 20 Jan 2005 00:42:05 +0000 (GMT)
|
||
Received: from sss.pgh.pa.us (sss.pgh.pa.us [66.207.139.130])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 493723A42C9;
|
||
Thu, 20 Jan 2005 00:42:08 +0000 (GMT)
|
||
Received: from sss2.sss.pgh.pa.us (tgl@localhost [127.0.0.1])
|
||
by sss.pgh.pa.us (8.13.1/8.13.1) with ESMTP id j0K0g4GY001116;
|
||
Wed, 19 Jan 2005 19:42:04 -0500 (EST)
|
||
To: "Marc G. Fournier" <scrappy@postgresql.org>
|
||
cc: Heikki Linnakangas <hlinnaka@iki.fi>, pgsql-hackers@postgresql.org
|
||
Subject: Re: [HACKERS] Two-phase commit for 8.1
|
||
In-Reply-To: <20050119165747.U47533@ganymede.hub.org>
|
||
References: <Pine.OSF.4.61.0501192055310.62540@kosh.hut.fi> <20050119165747.U47533@ganymede.hub.org>
|
||
Comments: In-reply-to "Marc G. Fournier" <scrappy@postgresql.org>
|
||
message dated "Wed, 19 Jan 2005 16:58:55 -0400"
|
||
Date: Wed, 19 Jan 2005 19:42:03 -0500
|
||
Message-ID: <1115.1106181723@sss.pgh.pa.us>
|
||
From: Tom Lane <tgl@sss.pgh.pa.us>
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
Status: OR
|
||
|
||
"Marc G. Fournier" <scrappy@postgresql.org> writes:
|
||
> If the patch is ready to be committed early in the cycle, I'd say most
|
||
> definitely ... just depends on how late in the cycle its ready ...
|
||
|
||
My recollection is that it's quite far from being complete. I had hoped
|
||
to spend some time during the 8.1 cycle helping Heikki finish it up,
|
||
but if we stick to the 2-month-dev-cycle idea I'm afraid there's no way
|
||
it'll be done in time. I thought that "some time" would probably amount
|
||
to a solid man-month or so, and there's no way I can spend half my time
|
||
on just one feature for this cycle.
|
||
|
||
If Heikki wants this in for 8.1, the right thing to do is vote against
|
||
the short-dev-cycle idea. But we need a plausible answer about what to
|
||
do about ARC to make that credible...
|
||
|
||
regards, tom lane
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 6: Have you searched our list archives?
|
||
|
||
http://archives.postgresql.org
|
||
|
||
From pgsql-hackers-owner+M63432=pgman=candle.pha.pa.us@postgresql.org Sun Jan 23 05:41:58 2005
|
||
Return-path: <pgsql-hackers-owner+M63432=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from svr1.postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id j0NBfvw06363
|
||
for <pgman@candle.pha.pa.us>; Sun, 23 Jan 2005 06:41:58 -0500 (EST)
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id D0CA53A3BE7
|
||
for <pgman@candle.pha.pa.us>; Sun, 23 Jan 2005 11:41:55 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 51743-08 for <pgman@candle.pha.pa.us>;
|
||
Sun, 23 Jan 2005 11:41:52 +0000 (GMT)
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id E67533A51E4
|
||
for <pgman@candle.pha.pa.us>; Sun, 23 Jan 2005 11:41:10 +0000 (GMT)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id CB87F3A525A
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Sun, 23 Jan 2005 11:39:49 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 51345-07
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Sun, 23 Jan 2005 11:39:32 +0000 (GMT)
|
||
Received: from smtp-3.hut.fi (smtp-3.hut.fi [130.233.228.93])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 5F3223A1AA3
|
||
for <pgsql-hackers@postgresql.org>; Sun, 23 Jan 2005 11:38:50 +0000 (GMT)
|
||
Received: from localhost (katosiko.hut.fi [130.233.228.115])
|
||
by smtp-3.hut.fi (8.12.10/8.12.10) with ESMTP id j0NBcmeL011515;
|
||
Sun, 23 Jan 2005 13:38:48 +0200
|
||
Received: from smtp-3.hut.fi ([130.233.228.93])
|
||
by localhost (katosiko.hut.fi [130.233.228.115]) (amavisd-new, port 10024)
|
||
with LMTP id 04384-02-2; Sun, 23 Jan 2005 13:38:47 +0200 (EET)
|
||
Received: from kosh.hut.fi (kosh.hut.fi [130.233.228.10])
|
||
by smtp-3.hut.fi (8.12.10/8.12.10) with ESMTP id j0NBbUEJ011361;
|
||
Sun, 23 Jan 2005 13:37:30 +0200
|
||
Date: Sun, 23 Jan 2005 13:37:30 +0200 (EET)
|
||
From: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
X-X-Sender: hlinnaka@kosh.hut.fi
|
||
To: =?ISO-8859-1?Q?Hans-J=FCrgen_Sch=F6nig?= <postgres@cybertec.at>
|
||
cc: pgsql-hackers@postgresql.org
|
||
Subject: Re: [HACKERS] Two-phase commit for 8.1
|
||
In-Reply-To: <41F3699B.2060608@cybertec.at>
|
||
Message-ID: <Pine.OSF.4.61.0501231147320.64318@kosh.hut.fi>
|
||
References: <Pine.OSF.4.61.0501192055310.62540@kosh.hut.fi>
|
||
<20050119165747.U47533@ganymede.hub.org> <1115.1106181723@sss.pgh.pa.us>
|
||
<Pine.OSF.4.61.0501212033520.352045@kosh.hut.fi> <41F3699B.2060608@cybertec.at>
|
||
MIME-Version: 1.0
|
||
Content-Type: TEXT/PLAIN; charset=ISO-8859-1; format=flowed
|
||
Content-Transfer-Encoding: 8BIT
|
||
X-TKK-Virus-Scanned: by amavisd-new-2.1.2-hutcc at katosiko.hut.fi
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: OR
|
||
|
||
On Sun, 23 Jan 2005, Hans-J<>rgen Sch<63>nig wrote:
|
||
|
||
> Heikki,
|
||
>
|
||
> What is still missing to complete the 2PC patch?.
|
||
|
||
Here's my TODO on things that need to be done:
|
||
|
||
* large objects
|
||
* guc variables
|
||
* notify/listen
|
||
|
||
Large objects and notify/listen should be quite straightforward. GUC
|
||
variables need some thinking, but shouldn't be much work.
|
||
|
||
As the patch gets more attention, I'm sure more issues will come up.
|
||
|
||
- Heikki
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 9: the planner will ignore your desire to choose an index scan if your
|
||
joining column's datatypes do not match
|
||
|
||
From pgsql-hackers-owner+M63434=pgman=candle.pha.pa.us@postgresql.org Sun Jan 23 09:15:24 2005
|
||
Return-path: <pgsql-hackers-owner+M63434=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from svr1.postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id j0NFFMw25305
|
||
for <pgman@candle.pha.pa.us>; Sun, 23 Jan 2005 10:15:23 -0500 (EST)
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 3A5DA3A3BE7
|
||
for <pgman@candle.pha.pa.us>; Sun, 23 Jan 2005 15:15:16 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 99539-08 for <pgman@candle.pha.pa.us>;
|
||
Sun, 23 Jan 2005 15:15:11 +0000 (GMT)
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 4A7C43A1A03
|
||
for <pgman@candle.pha.pa.us>; Sun, 23 Jan 2005 15:15:15 +0000 (GMT)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 08EA83A5242
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Sun, 23 Jan 2005 15:13:52 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 00254-02
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Sun, 23 Jan 2005 15:13:46 +0000 (GMT)
|
||
Received: from sunsite.dcc.uchile.cl (sunsite.dcc.uchile.cl [192.80.24.2])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id AF7C83A520D
|
||
for <pgsql-hackers@postgresql.org>; Sun, 23 Jan 2005 15:13:48 +0000 (GMT)
|
||
Received: from anakena.dcc.uchile.cl ([192.80.24.3])
|
||
by sunsite.dcc.uchile.cl (8.12.11/8.12.11) with ESMTP id j0NFDbu4014311;
|
||
Sun, 23 Jan 2005 12:13:42 -0300 (CLST)
|
||
Received: by anakena.dcc.uchile.cl (Postfix, from userid 4151)
|
||
id 666A5527DA; Sun, 23 Jan 2005 12:13:37 -0300 (CLST)
|
||
Date: Sun, 23 Jan 2005 12:13:37 -0300
|
||
From: Alvaro Herrera <alvherre@dcc.uchile.cl>
|
||
To: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
cc: =?iso-8859-1?Q?Hans-J=FCrgen_Sch=F6nig?= <postgres@cybertec.at>,
|
||
pgsql-hackers@postgresql.org
|
||
Subject: Re: [HACKERS] Two-phase commit for 8.1
|
||
Message-ID: <20050123151337.GD4406@dcc.uchile.cl>
|
||
References: <Pine.OSF.4.61.0501192055310.62540@kosh.hut.fi> <20050119165747.U47533@ganymede.hub.org> <1115.1106181723@sss.pgh.pa.us> <Pine.OSF.4.61.0501212033520.352045@kosh.hut.fi> <41F3699B.2060608@cybertec.at> <Pine.OSF.4.61.0501231147320.64318@kosh.hut.fi>
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain; charset=us-ascii
|
||
Content-Disposition: inline
|
||
In-Reply-To: <Pine.OSF.4.61.0501231147320.64318@kosh.hut.fi>
|
||
User-Agent: Mutt/1.5.6i
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: OR
|
||
|
||
On Sun, Jan 23, 2005 at 01:37:30PM +0200, Heikki Linnakangas wrote:
|
||
|
||
> As the patch gets more attention, I'm sure more issues will come up.
|
||
|
||
I see the changes to the lock manager are huge. Can you explain what's
|
||
the idea behind those? Do you release the locks and then reacquire
|
||
them, or do you reassign them to a pseudo process? Are there
|
||
possibilities of deadlock somewhere?
|
||
|
||
--
|
||
Alvaro Herrera (<alvherre[@]dcc.uchile.cl>)
|
||
Thou shalt study thy libraries and strive not to reinvent them without
|
||
cause, that thy code may be short and readable and thy days pleasant
|
||
and productive. (7th Commandment for C Programmers)
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 3: if posting/reading through Usenet, please send an appropriate
|
||
subscribe-nomail command to majordomo@postgresql.org so that your
|
||
message can get through to the mailing list cleanly
|
||
|
||
From pgsql-hackers-owner+M63438=pgman=candle.pha.pa.us@postgresql.org Sun Jan 23 11:36:40 2005
|
||
Return-path: <pgsql-hackers-owner+M63438=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from svr1.postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id j0NHaaw11289
|
||
for <pgman@candle.pha.pa.us>; Sun, 23 Jan 2005 12:36:37 -0500 (EST)
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 7A1633A4A77
|
||
for <pgman@candle.pha.pa.us>; Sun, 23 Jan 2005 17:36:32 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 13791-10 for <pgman@candle.pha.pa.us>;
|
||
Sun, 23 Jan 2005 17:36:31 +0000 (GMT)
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 852863A49EC
|
||
for <pgman@candle.pha.pa.us>; Sun, 23 Jan 2005 17:36:31 +0000 (GMT)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 252743A4B01
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Sun, 23 Jan 2005 17:35:26 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 13880-08
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Sun, 23 Jan 2005 17:35:17 +0000 (GMT)
|
||
Received: from smtp-1.hut.fi (smtp-1.hut.fi [130.233.228.91])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 5B7633A19A5
|
||
for <pgsql-hackers@postgresql.org>; Sun, 23 Jan 2005 17:35:12 +0000 (GMT)
|
||
Received: from localhost (katosiko.hut.fi [130.233.228.115])
|
||
by smtp-1.hut.fi (8.12.10/8.12.10) with ESMTP id j0NHYwms014946;
|
||
Sun, 23 Jan 2005 19:34:58 +0200
|
||
Received: from smtp-1.hut.fi ([130.233.228.91])
|
||
by localhost (katosiko.hut.fi [130.233.228.115]) (amavisd-new, port 10024)
|
||
with LMTP id 04068-01; Sun, 23 Jan 2005 19:34:57 +0200 (EET)
|
||
Received: from kosh.hut.fi (kosh.hut.fi [130.233.228.10])
|
||
by smtp-1.hut.fi (8.12.10/8.12.10) with ESMTP id j0NHWt0g014723;
|
||
Sun, 23 Jan 2005 19:32:55 +0200
|
||
Date: Sun, 23 Jan 2005 19:32:55 +0200 (EET)
|
||
From: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
X-X-Sender: hlinnaka@kosh.hut.fi
|
||
To: Alvaro Herrera <alvherre@dcc.uchile.cl>
|
||
cc: =?ISO-8859-1?Q?Hans-J=FCrgen_Sch=F6nig?= <postgres@cybertec.at>,
|
||
pgsql-hackers@postgresql.org
|
||
Subject: Re: [HACKERS] Two-phase commit for 8.1
|
||
In-Reply-To: <20050123151337.GD4406@dcc.uchile.cl>
|
||
Message-ID: <Pine.OSF.4.61.0501231916520.414393@kosh.hut.fi>
|
||
References: <Pine.OSF.4.61.0501192055310.62540@kosh.hut.fi>
|
||
<20050119165747.U47533@ganymede.hub.org> <1115.1106181723@sss.pgh.pa.us>
|
||
<Pine.OSF.4.61.0501212033520.352045@kosh.hut.fi> <41F3699B.2060608@cybertec.at>
|
||
<Pine.OSF.4.61.0501231147320.64318@kosh.hut.fi> <20050123151337.GD4406@dcc.uchile.cl>
|
||
MIME-Version: 1.0
|
||
Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
|
||
X-TKK-Virus-Scanned: by amavisd-new-2.1.2-hutcc at katosiko.hut.fi
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: OR
|
||
|
||
On Sun, 23 Jan 2005, Alvaro Herrera wrote:
|
||
|
||
> On Sun, Jan 23, 2005 at 01:37:30PM +0200, Heikki Linnakangas wrote:
|
||
>
|
||
>> As the patch gets more attention, I'm sure more issues will come up.
|
||
|
||
> I see the changes to the lock manager are huge. Can you explain what's
|
||
> the idea behind those? Do you release the locks and then reacquire
|
||
> them, or do you reassign them to a pseudo process?
|
||
|
||
I reassign them to a pseudo process (persistedLocksProc).
|
||
|
||
Much of the changes in lock.c are just about moving code around.
|
||
Some copy-paste code has been put in functions. LockAcquire has been
|
||
changed to take PGPROC as an argument, so that locks can be acquired on
|
||
behalf of the pseudo process.
|
||
|
||
Then there's completely new code for persisting locks on PREPARE
|
||
TRANSACTION and reacquiring them on recovery.
|
||
|
||
If it helps, I could try to split it into two patches, one with code
|
||
rearrangements that don't change current behaviour, and then the actual
|
||
2PC stuff on top of that.
|
||
|
||
> Are there possibilities of deadlock somewhere?
|
||
|
||
Not that I know of.
|
||
|
||
- Heikki
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 5: Have you checked our extensive FAQ?
|
||
|
||
http://www.postgresql.org/docs/faq
|
||
|
||
From pgsql-hackers-owner+M63788=pgman=candle.pha.pa.us@postgresql.org Mon Jan 31 09:35:11 2005
|
||
Return-path: <pgsql-hackers-owner+M63788=pgman=candle.pha.pa.us@postgresql.org>
|
||
Received: from svr1.postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id j0VFZAw06420
|
||
for <pgman@candle.pha.pa.us>; Mon, 31 Jan 2005 10:35:10 -0500 (EST)
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 46B838B9C28
|
||
for <pgman@candle.pha.pa.us>; Mon, 31 Jan 2005 15:35:07 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 86064-08 for <pgman@candle.pha.pa.us>;
|
||
Mon, 31 Jan 2005 15:35:03 +0000 (GMT)
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 5D6918B9E6A
|
||
for <pgman@candle.pha.pa.us>; Mon, 31 Jan 2005 15:23:48 +0000 (GMT)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id E92DF8B9CC6
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Mon, 31 Jan 2005 15:21:14 +0000 (GMT)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 83005-03
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Mon, 31 Jan 2005 15:21:04 +0000 (GMT)
|
||
Received: from sunsite.dcc.uchile.cl (sunsite.dcc.uchile.cl [192.80.24.2])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id A315B8B9D3E
|
||
for <pgsql-hackers@postgresql.org>; Mon, 31 Jan 2005 15:01:43 +0000 (GMT)
|
||
Received: from anakena.dcc.uchile.cl ([192.80.24.3])
|
||
by sunsite.dcc.uchile.cl (8.12.11/8.12.11) with ESMTP id j0VF1KCf026107;
|
||
Mon, 31 Jan 2005 12:01:24 -0300 (CLST)
|
||
Received: by anakena.dcc.uchile.cl (Postfix, from userid 4151)
|
||
id F287A52515; Mon, 31 Jan 2005 12:01:19 -0300 (CLST)
|
||
Date: Mon, 31 Jan 2005 12:01:19 -0300
|
||
From: Alvaro Herrera <alvherre@dcc.uchile.cl>
|
||
To: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
cc: =?iso-8859-1?Q?Hans-J=FCrgen_Sch=F6nig?= <postgres@cybertec.at>,
|
||
pgsql-hackers@postgresql.org
|
||
Subject: Re: [HACKERS] Two-phase commit for 8.1
|
||
Message-ID: <20050131150119.GI22141@dcc.uchile.cl>
|
||
References: <Pine.OSF.4.61.0501192055310.62540@kosh.hut.fi> <20050119165747.U47533@ganymede.hub.org> <1115.1106181723@sss.pgh.pa.us> <Pine.OSF.4.61.0501212033520.352045@kosh.hut.fi> <41F3699B.2060608@cybertec.at> <Pine.OSF.4.61.0501231147320.64318@kosh.hut.fi> <20050123151337.GD4406@dcc.uchile.cl> <Pine.OSF.4.61.0501231916520.414393@kosh.hut.fi>
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain; charset=iso-8859-1
|
||
Content-Disposition: inline
|
||
Content-Transfer-Encoding: 8bit
|
||
In-Reply-To: <Pine.OSF.4.61.0501231916520.414393@kosh.hut.fi>
|
||
User-Agent: Mutt/1.5.6i
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on
|
||
candle.pha.pa.us
|
||
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
|
||
version=2.61
|
||
Status: OR
|
||
|
||
On Sun, Jan 23, 2005 at 07:32:55PM +0200, Heikki Linnakangas wrote:
|
||
|
||
> If it helps, I could try to split it into two patches, one with code
|
||
> rearrangements that don't change current behaviour, and then the actual
|
||
> 2PC stuff on top of that.
|
||
|
||
I think that'd be a good idea, because such a patch could be merged
|
||
right now, and the actual 2PC stuff would be smaller and easier to
|
||
review.
|
||
|
||
You'd only need a committer to actually commit the initial patch ...
|
||
|
||
--
|
||
Alvaro Herrera (<alvherre[@]dcc.uchile.cl>)
|
||
"No hay cielo posible sin hundir nuestras ra<72>ces
|
||
en la profundidad de la tierra" (Malucha Pinto)
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 9: the planner will ignore your desire to choose an index scan if your
|
||
joining column's datatypes do not match
|
||
|
||
From pgsql-hackers-owner+M66050@postgresql.org Wed Apr 6 10:04:39 2005
|
||
Return-path: <pgsql-hackers-owner+M66050@postgresql.org>
|
||
Received: from svr1.postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id j36E4cO20150
|
||
for <pgman@candle.pha.pa.us>; Wed, 6 Apr 2005 10:04:38 -0400 (EDT)
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id 248C2537FE
|
||
for <pgman@candle.pha.pa.us>; Wed, 6 Apr 2005 15:04:32 +0100 (BST)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 64844-06 for <pgman@candle.pha.pa.us>;
|
||
Wed, 6 Apr 2005 14:04:32 +0000 (GMT)
|
||
Received: from postgresql.org (svr1.postgresql.org [200.46.204.71])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id D2EB5537F8
|
||
for <pgman@candle.pha.pa.us>; Wed, 6 Apr 2005 15:04:31 +0100 (BST)
|
||
X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
|
||
Received: from localhost (unknown [200.46.204.144])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id AA7FE539FA
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>; Wed, 6 Apr 2005 15:01:33 +0100 (BST)
|
||
Received: from svr1.postgresql.org ([200.46.204.71])
|
||
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
|
||
with ESMTP id 62842-09
|
||
for <pgsql-hackers-postgresql.org@localhost.postgresql.org>;
|
||
Wed, 6 Apr 2005 14:01:26 +0000 (GMT)
|
||
Received: from smtp-1.hut.fi (smtp-1.hut.fi [130.233.228.91])
|
||
by svr1.postgresql.org (Postfix) with ESMTP id F02FD538C8
|
||
for <pgsql-hackers@postgresql.org>; Wed, 6 Apr 2005 15:01:22 +0100 (BST)
|
||
Received: from localhost (katosiko.hut.fi [130.233.228.115])
|
||
by smtp-1.hut.fi (8.12.10/8.12.10) with ESMTP id j36E11Yl028611;
|
||
Wed, 6 Apr 2005 17:01:01 +0300
|
||
Received: from smtp-1.hut.fi ([130.233.228.91])
|
||
by localhost (katosiko.hut.fi [130.233.228.115]) (amavisd-new, port 10024)
|
||
with LMTP id 22125-05; Wed, 6 Apr 2005 17:01:00 +0300 (EEST)
|
||
Received: from kosh.hut.fi (kosh.hut.fi [130.233.228.10])
|
||
by smtp-1.hut.fi (8.12.10/8.12.10) with ESMTP id j36DxlPJ028376;
|
||
Wed, 6 Apr 2005 16:59:48 +0300
|
||
Date: Wed, 6 Apr 2005 16:59:47 +0300 (EEST)
|
||
From: Heikki Linnakangas <hlinnaka@iki.fi>
|
||
X-X-Sender: hlinnaka@kosh.hut.fi
|
||
To: Alvaro Herrera <alvherre@dcc.uchile.cl>
|
||
cc: pgsql-hackers@postgresql.org
|
||
Subject: Re: [HACKERS] Two phase commit
|
||
In-Reply-To: <20050405230731.GA26960@surnet.cl>
|
||
Message-ID: <Pine.OSF.4.61.0504061652300.502110@kosh.hut.fi>
|
||
References: <20050405230731.GA26960@surnet.cl>
|
||
MIME-Version: 1.0
|
||
Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
|
||
X-TKK-Virus-Scanned: by amavisd-new-2.1.2-hutcc at katosiko.hut.fi
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
X-Mailing-List: pgsql-hackers
|
||
Precedence: bulk
|
||
Sender: pgsql-hackers-owner@postgresql.org
|
||
X-Virus-Scanned: by amavisd-new at hub.org
|
||
Status: OR
|
||
|
||
On Tue, 5 Apr 2005, Alvaro Herrera wrote:
|
||
|
||
> What happenned to your two phase commit patch? Are you still working on
|
||
> it? Have you got something done from the last time we heard from you?
|
||
|
||
I've kept it up-to-date by doing "cvs update" every now and then and
|
||
fixing possible conflicts.
|
||
|
||
It would be nice if you hackers could take a serious look at it and tell
|
||
what needs to be done to get it finally committed.
|
||
|
||
I've been busy with other things and haven't had the time to push it.
|
||
|
||
I try to update my "project page" every time I update the patch:
|
||
|
||
http://www.hut.fi/~hlinnaka/pgsql/
|
||
|
||
There isn't any big issues left as far as I know.
|
||
|
||
- Heikki
|
||
|
||
---------------------------(end of broadcast)---------------------------
|
||
TIP 2: you can get off all lists at once with the unregister command
|
||
(send "unregister YourEmailAddressHere" to majordomo@postgresql.org)
|
||
|