----- Original Message ----- 
From: "Bruce Momjian" <[EMAIL PROTECTED]>

> Mike Mascari wrote:
> > Okay. But please keep in mind that a 2-phase commit implementation
> > is used for more than just replication. 
> 
> This is a good point.  I don't want to push Postgres-R as our solution. 
> Rather, I have looked at both and like Postgres-R, but others need to
> look at both and decide so we are all in agreement when we move forward.
> 

After having read your post regarding Spread, I see that it is an alternative to 2PC 
as a distributed TX protocol. If I understand you correctly, a DBLINK implementation 
built atop Spread would also be possible. Correct? The question then is, do other 
RDBMS expose a 2PC implementation which could not then be leveraged at a later time? 
For example imagine:

1. 7.4 includes a native 2PC protocol with:

CREATE DATABASE LINK accounting
CONNECT TO accounting.acme.com:5432
IDENTIFIED BY mascarm/mascarm;

SELECT *
FROM employees@accounting;

INSERT INTO employees@accounting
VALUES (1, 'Mike', 'Mascari');

That would be great, allowing PostgreSQL servers running in different departments to 
participate in a distributed tx. 

2. 7.5 includes a DBLINK which supports PostgreSQL participating in a heterogenous 
distributed transaction (with say, an Oracle database):

CREATE DATABASE LINK finance
CONNECT TO <oracle names entry>
IDENTIFIED BY mascarm/mascarm
USING INTERFACE 'pg2oracle.so';

INSERT INTO employees@finance
VALUES (1, 'Mike', 'Mascari');

I guess I'm basically asking:

1) Is it necessary to *choose* between support for 2PC and Spread (Postgres-R) or 
can't we have both? Spread for Replication, 2PC for non-replicating distributed TX?

2) Do major SQL DBMS vendors which support distributed options expose a callable 
interface into a 2PC protocol that would allow PostgreSQL to participate? I could 
check on this...

3) Are there any standards (besides ODBC, which, the last time I looked just had 
COMMIT/ABORT APIs), that have been defined and adopted by the industry for distributed 
tx?

Again, I'd guess most people want:

1) High performance Master/Master replication *and* (r.e. Postgres-R)
2) Ability to participate in distrubuted tx's (r.e. 2PC?)

Mike Mascari
[EMAIL PROTECTED]




---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://archives.postgresql.org

Reply via email to