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.
Historical Background
2PC is the simplest and most studied atomic commit protocol (ACP). It was first published in [9] and [4]. Since then, the protocol has received much attention from the academia and industry due to its importance in distributed database systems, and the research has resulted in numerous variants and optimizations for different distributed database environments. These environments include main memory databases (e.g., [10]), real-time databases (e.g., [5]), mobile database systems (e.g., [12]), heterogeneous database systems (e.g., [2]), Web...
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsRecommended Reading
Al-Houmaily Y. Atomic commit protocols, their integration, and their optimisations in distributed database systems. Int J Intell Inf Database Syst. 2010;4(4):373–412.
Al-Houmaily Y. Incompatibility dimensions and integration of atomic commit protocols. Int Arab J Inf Technol. 2008;5(4):381–392.
Al-Houmaily Y, Chrysanthis P. Atomicity with incompatible presumptions. In: Proceedings of the 18th ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems; 1999. p. 306–15.
Gray JN. Notes on data base operating systems. In: Flynn MJ et al., editors. Operating systems – an advanced course, LNCS, vol. 60. London: Springer; 1978. p. 393–481.
Haritsa J, Ramamritham K, Gupta R. The PROMPT real-time commit protocol. IEEE Trans Parallel Distrib Syst. 2000;11(2):160–81.
ISO. Open systems interconnection – distributed transaction processing – Part 1: OSI TP Model. ISO/IEC, 10026-1. 1998.
Lamport L, Shostak R, Pease M. The byzantine generals problem. ACM Trans Program Lang Syst. 1982;4(3):382–401.
Lampson B, Lomet D. A new presumed commit optimization for two phase commit. In: Proceedings of the 19th International Conference on Very Large Data Bases; 1993. p. 630–40.
Lampson B., Sturgis H. Crash recovery in a distributed data storage system. Technical report, Computer Science Laboratory, Xerox Palo Alto Research Center, CA, 1976.
Lee I, Yeom H. A single phase distributed commit protocol for main memory database systems. In: Proceedings of the 16th International Parallel and Distributed Processing Symposium; 2002. p. 14–21.
Mohan C, Lindsay B, Obermarck R. Transaction management in the R* distributed data base management system. ACM Trans Database Syst. 1986;11(4):378–96.
Nouali N, Drias H, Doucet A. A mobility-aware two-phase commit protocol. Int Arab J Inf Technol. 2006;3(1):1–8.
Samaras G, Britton K, Citron A, Mohan C. Two-phase commit optimizations in a commercial distributed environment. Distrib Parallel Database. 1995;3(4):325–61.
X/Open Company Limited. Distributed transaction processing: reference model. Version 3 (X/Open Document No. 504). 1996.
Yu W, Pu C. A dynamic two-phase commit protocol for adaptive composite services. Int J Web Serv Res. 2007;4(1):80–100.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Section Editor information
Rights and permissions
Copyright information
© 2018 Springer Science+Business Media, LLC, part of Springer Nature
About this entry
Cite this entry
Al-Houmaily, Y.J., Samaras, G. (2018). Two-Phase Commit. In: Liu, L., Özsu, M.T. (eds) Encyclopedia of Database Systems. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-8265-9_713
Download citation
DOI: https://doi.org/10.1007/978-1-4614-8265-9_713
Published:
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4614-8266-6
Online ISBN: 978-1-4614-8265-9
eBook Packages: Computer ScienceReference Module Computer Science and Engineering