Everything about Two-phase commit protocol
Computer science transaction algorithm
In transaction processing, databases, and computer networking, the two-phase commit protocol is a type of atomic commitment protocol (ACP). It is a distributed algorithm that coordinates all the processes that participate in a distributed atomic transaction on whether to commit or abort the transaction. This protocol achieves its goal even in many cases of temporary system failure, and is thus widely used. However, it is not resilient to all possible failure configurations, and in rare cases, manual intervention is needed to remedy an outcome. To accommodate recovery from failure the protocol's participants use logging of the protocol's states. Log records, which are typically slow to generate but survive failures, are used by the protocol's recovery procedures. Many protocol variants exist that primarily differ in logging strategies and recovery mechanisms. Though usually intended to be used infrequently, recovery procedures compose a substantial portion of the protocol, due to many possible failure scenarios to be considered and supported by the protocol. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Two-phase commit protocolA 5-minute orientation
- Pick up a classic book: Data Communications and NetworkingThe most-reprinted book on the subject
- Read the landmark paper: The Two-Phase Commitment Protocol in an Extended π-CalculusCited 27 times
- Go sideways: Three-phase commit protocolA closely related topic
- Go sideways: Commit (data management)A closely related topic
📖 Definitions
No dictionary entry for this exact phrase.
🗂️ The subject at a glance
🏆 Landmark papers (most cited)
The Two-Phase Commitment Protocol in an Extended π-Calculus
The Performance of Two Phase Commit Protocols in the Presence of Site Failures
The presumed-either two-phase commit protocol
A Dynamic Two-Phase Commit Protocol for Adaptive Composite Services
LIFT- A Linear Two-Phase Commit Protocol
Performance of a two-phase commit protocol
Cross shard leader accountability protocol based on two phase atomic commit
A flexible two-phase commit protocol
📚 Books worth reading
Data Communications and NetworkingBehrouz A. Forouzan, Catherine Ann Coombs · 2000
The Conspirators HierarchyJohn Coleman · 1992
Treaty Occupationay ToxicologySuelen Queiroz · 2010
The Human Planet · 2009
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Three-phase commit protocol In computer networking and distributed databases, the three-phase commit protocol (3PC) is a distributed algorithm that ensures all nodes in a system agree…
- Commit (data management) In computer science and data management, a commit is a behavior that marks the end of a transaction and provides Atomicity, Consistency, Isolation, and…
- Atomic commit In the field of computer science, an atomic commit is an operation that applies a set of distinct changes as a single operation. If the changes are applied…
- X/Open XA For transaction processing in computing, the X/Open XA standard (short for "eXtended Architecture") is a specification released in 1991 by X/Open (which…
- Commitment ordering Commitment ordering (CO) is a class of interoperable serializability techniques in concurrency control of databases, transaction processing, and related…
- Distributed algorithm A distributed algorithm is an algorithm designed to run on computer hardware constructed from interconnected processors. Distributed algorithms are used…
- Consensus (computer science) A fundamental problem in distributed computing and multi-agent systems is to achieve overall system reliability in the presence of a number of faulty processes…
- Durability (database systems) In database systems, durability is the ACID property that guarantees that the effects of transactions that have been committed will survive permanently…