Tom Lane wrote:
> I don't see why 2PC would require any protocol-level change.  I would
> think that the API would be something like
> 
>       BEGIN;
>       issue some commands ...
>       PRECOMMIT;
>       -- if the above does not return an error, then
>       COMMIT;
> 
> In other words, 2PC would require some new commands, but a new command
> doesn't affect the protocol layer.

I think a precommit-vote-commit phase of 2PC can be implemented in
command-lavel or protocol-level.

In command-level 2PC, an user application (or application programmer)
must know the DBMS is clustered or not (to use PRECOMMIT command).

In protocol-layer 2PC, no new SQL command is required.
A precommit-vote-commit phase will be called implicitly.  It means an
user application can be used without any modification.  An application
can use a traditional way (BEGIN...COMMIT).

So I made my decision to use protocol-layer implementation.
It doesn't affect the SQL command layer.

-- 
NAGAYASU Satoshi <[EMAIL PROTECTED]>

---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to [EMAIL PROTECTED] so that your
message can get through to the mailing list cleanly

Reply via email to