> -----Original Message-----
> From: Satoshi Nagayasu [mailto:pgsql@snaga.org]
> Sent: Friday, October 10, 2003 12:26 PM
> To: Andrew Sullivan
> Cc: pgsql-hackers@postgresql.org
> Subject: Re: [HACKERS] 2-phase commit
>
> Andrew Sullivan <andrew@libertyrms.info> wrote:
> > On Fri, Oct 10, 2003 at 09:46:35AM +0900, Tatsuo Ishii wrote:
> > > Satoshi, the only guy who made a trial implementation of 2PC for
> > > PostgreSQL, has already showed that 2PC is not that slow.
> >
> > If someone has a fast implementation, so much the better. I'm not
> > opposed to fast implementations!
>
> The pgbench results of my experimental 2PC implementation
> and plain postgresql are available.
>
> PostgreSQL 7.3
> http://snaga.org/pgsql/pgbench/pgbench-REL7_3.log
>
> Experimental 2PC in PostgreSQL 7.3
> http://snaga.org/pgsql/pgbench/pgbench-TPC0_0_2.log
>
> I can't see a grave overhead from this comparison.
2PC is absolutely essential when you have to have both parts of the
transaction complete for a logical unit of work. For a project that
needs it, if you don't have it you will be forced to go to another tool,
or perform lots of custom programming to work around it.
If you have 2PC and it is ten times slower than without it, you will
still need it for projects requiring that capability.
Now, a good model to start with is a very good idea. So some discussion
and analysis is a good thing. From the looks of it, Satoshi Nagayasu
has done a very good job. Having a functional 2PC would be a huge
feather in the cap of PostgreSQL.
IMO-YMMV