Two-Phase Commit

Definition Two-phase commit (2PC) is a synchronization protocol that solves the atomic commitment problem, a special case of the Byzantine Generals problem. Essentially, it is used in distributed database systems to ensure global atomicity of transactions in spite of site and communication failures, assuming that a failure will be, eventually, repaired and each site guarantees atomicity of transactions at its local level.

[1]  Bruce G. Lindsay,et al.  Transaction management in the R* distributed database management system , 1986, TODS.

[2]  Butler W. Lampson,et al.  A New Presumed Commit Optimization for Two Phase Commit , 1993, VLDB.

[3]  Jayant R. Haritsa,et al.  The PROMPT Real-Time Commit Protocol , 2000, IEEE Trans. Parallel Distributed Syst..

[4]  Panos K. Chrysanthis,et al.  Atomicity with incompatible presumptions , 1999, PODS.

[5]  Heon Young Yeom,et al.  A single phase distributed commit protocol for main memory database systems , 2002, Proceedings 16th International Parallel and Distributed Processing Symposium.

[6]  Butler W. Lampson,et al.  Crash Recovery in a Distributed Data Storage System , 1981 .

[7]  Calton Pu,et al.  A Dynamic Two-Phase Commit Protocol for Adaptive Composite Services , 2007, Int. J. Web Serv. Res..

[8]  Habiba Drias,et al.  A Mobility-Aware Two-Phase Commit Protocol , 2006, Int. Arab J. Inf. Technol..

[9]  C. Mohan,et al.  Two-phase commit optimizations in a commercial distributed environment , 1995, Distributed and Parallel Databases.

[10]  Jim Gray,et al.  Notes on Data Base Operating Systems , 1978, Advanced Course: Operating Systems.

[11]  Leslie Lamport,et al.  The Byzantine Generals Problem , 1982, TOPL.