Synonyms
Definition
The two-phase commit (2PC) protocol is a distributed algorithm to ensure the consistent termination of a transaction in a distributed environment. Thus, via 2PC a unanimous decision is reached and enforced among multiple participating servers whether to commit or abort a given transaction, thereby guaranteeing atomicity. The protocol proceeds in two phases, namely, the prepare (or voting) and the commit (or decision) phase, which explains the protocol’s name.
The protocol is executed by a coordinator process, while the participating servers are called participants. When the transaction’s initiator issues a request to commit the transaction, the coordinator starts the first phase of the 2PC protocol by querying – via prepare messages – all participants whether to abort or to commit the transaction. If all participants vote to commit, then in the second phase, the coordinator informs all participants to commit their share of the transaction by sending a com...
Recommended Reading
Cabrera LF et al. Web services atomic transaction, 2005.
Gray J. Notes on database operating systems. In: Bayer R, Graham MR, Seegmüller G, editors. Operating systems: an advanced course, Lecture notes in computer science, vol. 60. Berlin: Springer; 1978. p. 393–481.
Gray J, Reuter A. Transaction processing: concepts and techniques. San Francisco: Morgan Kaufmann; 1993.
Lampson BW, Sturgis H. Crash recovery in distributed data storage systems. Technical Report. Palo Alto: Xerox Palo Alto Research Center.
OMG Transaction Service, version 1.4. http://www.omg.org/technology/documents/formal/transaction_service.htm (2007).
Sun Microsystems. Java Transaction API (JTA). http://java.sun.com/jta/; http://java.sun.com/jta/ (2007).
The Open GROUP Distributed Transaction Processing: The XA Specification. X/Open Company Ltd, ISBN 1 872630 24 3; 1991.
Weikum G, Vossen G. Transactional information systems – theory, algorithms, and the practice of concurrency control and recovery. San Francisco: Morgan Kaufmann; 2002.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Section Editor information
Rights and permissions
Copyright information
© 2016 Springer Science+Business Media New York
About this entry
Cite this entry
Lechtenbörger, J. (2016). Two-Phase Commit Protocol. In: Liu, L., Özsu, M. (eds) Encyclopedia of Database Systems. Springer, New York, NY. https://doi.org/10.1007/978-1-4899-7993-3_2-2
Download citation
DOI: https://doi.org/10.1007/978-1-4899-7993-3_2-2
Received:
Accepted:
Published:
Publisher Name: Springer, New York, NY
Online ISBN: 978-1-4899-7993-3
eBook Packages: Springer Reference Computer SciencesReference Module Computer Science and Engineering