Skip to main content

Three-Phase Commit

  • Reference work entry
  • First Online:
  • 18 Accesses

Definition

Three-phase commit (3PC) is a synchronization protocol that ensures global atomicity of distributed transactions while alleviating the blocking aspect of 2PC (two-phase commit) in the events of site failures. That is, 3PC never requires operational sites to wait (i.e., block) until a failed site has recovered.

Historical Background

3PC was one of the first attempts to resolve the blocking aspects of 2PC [1]. The main purpose of the protocol is to allow operational sites to continue transaction processing and reach agreement about the final status of transactions in spite of the presence of site failures. 3PC can tolerate any number of site failures (except for total sites’ failures), assuming a highly reliable network (i.e., a network that never causes operational sites to be partitioned into more than one set of communicating sites, implying a network that never fails).

Foundations

In 2PC, a participant is blockedif it fails to communicate with the coordinator of a...

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   4,499.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD   6,499.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Recommended Reading

  1. Skeen D. Non-blocking commit protocols. In: Proceedings of the ACM SIGMOD International Conference on Management of Data; 1981. p. 133–42.

    Google Scholar 

  2. 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.

    Google Scholar 

  3. Al-Houmaily Y. Incompatibility dimensions and integration of atomic commit protocols. Int Arab J Inf Technol. 2008;5(4):381–392.

    Google Scholar 

  4. Yu W, Pu C. A Dynamic two-phase commit protocol for adaptive composite services. Int J Web Serv Res. 2007;4(1):80–100.

    Article  Google Scholar 

  5. Samaras G, Britton K, Citron A, Mohan C. Two-phase commit optimizations in a commercial distributed environment. Distrib Parallel Databases. 1995;3(4):325–61.

    Article  Google Scholar 

  6. 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.

    Article  Google Scholar 

  7. Lamport L, Shostak R, Pease M. The byzantine generals problem. ACM Trans Program Lang Syst. 1982;4(3):382–401.

    Article  MATH  Google Scholar 

  8. Skeen D, Stonebraker M. A formal model of crash recovery in a distributed system. IEEE Trans Softw Eng. 1983;9(3):219–28.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yousef J. Al-Houmaily .

Editor information

Editors and Affiliations

Section Editor information

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Science+Business Media, LLC, part of Springer Nature

About this entry

Check for updates. Verify currency and authenticity via CrossMark

Cite this entry

Al-Houmaily, Y.J., Samaras, G. (2018). Three-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_714

Download citation

Publish with us

Policies and ethics