Skip to main content
Log in

The Performance of Two Phase Commit Protocols in the Presence of Site Failures

  • Published:
Distributed and Parallel Databases Aims and scope Submit manuscript

Abstract

The two phase commit is an important protocol in distributed database systems. Much of the existing literature on the protocol is restricted to discussing and analyzing the protocol (and its variants) in the absence of failures. Very little, especially in quantitative terms, has been written about its performance in the presence of site failures. In this study, we use a simulation testbed of a distributed database system to quantify the differences in the performances of four widely known variants of the 2PC protocols (the generic 2PC, presumed commit, presumed abort, and early prepare). Our study covers both the no-failure case and the case of site failures. We present a number of interesting results based on our experiments. One is that the performance of these protocols is highly dependent on the message-processing latency at the transaction coordinator site. Another is that the presumed abort protocol does not necessarily yield better performance in the presence of site failures.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Agarwal, D. A., personal communication on Ethernet performance measurements, Department of Electrical and Computer Engineering, University of California, Santa Barbara, May 1993.

    Google Scholar 

  2. Agrawal, R., Carey M., and Livny M. (1987). “The Performance of Alternative Strategies for Dealing with Deadlocks in Database Management Systems," IEEE Transactions on Software Engineering, SE-13(12):1348–1363, December 1987.

    Google Scholar 

  3. Bernstein, P. A., Hadzilacos, V., and Goodman, N., Concurrency Control and Recovery in Database Systems, Addison Wesley, Massachusetts, 1987.

    Google Scholar 

  4. Carey, M. and Livny, M., “Conflict Detection Tradeoffs for Replicated Data," ACM Transactions on Database Systems, 16(4):703–746, 1991.

    Google Scholar 

  5. CACI Products Company, MODSIM II Reference Manual, CACI, California, 1993.

    Google Scholar 

  6. Eswaran, K. P., Gray, J. N., Lorie, R. A., and Traiger, I. L., “The Notions of Consistency and Predicate Locks in a Database System,” Communications of the ACM,19(11):624–633, November 1976.

    Google Scholar 

  7. Ferrari, D., Computer Systems Performance Evaluation, Prentice Hall, 1978.

  8. Citron, A., Samaras, K., and Mohan, C., “Two-Phase Commit Optimizations and Tradeoffs in the Commercial Environment,” Proceedings of the Ninth International Conference on Data Engineering, pp. 520–529,April 1993.

  9. Gray, J. and Reuter, A., Transaction Processing Concepts and Techniques, Morgan Kaufman, 1993.

  10. Gray, J., Notes on Database Systems, Lecture Notes in Computer Science, Volume 60, Springer-Verlag, pp. 393–481, 1993.

    Google Scholar 

  11. Lampson, B., and Lomet, D., “A New Presumed Commit Optimization for Two Phase Commit,” Technical report, Digital Equipment Corporation, February 1993.

  12. Lampson, B.W., and Sturgis, H. E., “Crash recovery in a distributed data storage system,” Technical report, Computer Science Laboratory, Xerox Palo Alto Research Center, 1976.

  13. Lavenberg, S. Computer Performance Modeling Handbook, Academic Press, 1983.

  14. Law, A. M. and Kelton, D., Simulation Modeling and Analysis, McGraw Hill, 1991.

  15. Liu, M. L., The Design of Distributed Systems in the Presence of Failures, PhD thesis, the University of California, Santa Barbara, 1994.

    Google Scholar 

  16. Mohan C., Lindsay, B., and Obermarck, R., “Transaction Management in the R* Distributed Database Management System,” ACM Transactions on Database Systems, 11(4):378–396, December 1986.

    Google Scholar 

  17. Rosenkrantz, D. J., Stearns, R. E., and Lewis P. M., “System Level Concurrency Control for Distributed Database Systems,” ACM Transactions on Database Systems, 3(2):178–198, June 1978.

    Google Scholar 

  18. Schlichting, R. and Schneider, F. B., “An Approach to Designing Fault-Tolerant Computing Systems,” ACM Transactions on Computer Systems, 1(3):222–238, August 1982.

    Google Scholar 

  19. Scott, M. and Cox A., “An Empirical Study of message-Passing Overhead,” ICCC 7th International Conference on Distributed Computing Systems, 1987, pp. 536–543.

  20. Skeen, D., “A Quorum Based Commit Protocol,” Proceedings of the 6th Berkeley Workshop on Distributed Data Management and Computer Networks, February 1982, pp. 69–80.

  21. Skeen, D., Crash Recovery in a Distributed Database Systems, PhD thesis, Department of Electrical Engineering and Computer Science, University of California at Berkeley, 1982.

    Google Scholar 

  22. Skeen, D., “Non-blocking Commit Protocols,” Proceedings of the ACM SIGMOD Conference on Management of Data, June 1982, pp. 133–147.

  23. Stamos, I. and Cristian, F., “A Low-Cost Atomic Commit Protocol,” Proceedings of the Ninth Symposium on Reliable Distributed Systems, October 1990, pp. 66–75.

  24. Stamos, I. and Cristian, F., “Coordinator Log Transaction Execution Protocol,” Distributed and Parallel Databases, 1(4):383–408, 1993.

    Google Scholar 

  25. Triantafillou, P., “Recovering in Large Distributed Systems with Replicated Data,” Proceedings of the Second international Conference on Parallel and Distributed Information Systems, 1993, pp. 39–47.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Liu, M., Agrawal, D. & El Abbadi, A. The Performance of Two Phase Commit Protocols in the Presence of Site Failures. Distributed and Parallel Databases 6, 157–182 (1998). https://doi.org/10.1023/A:1008639314265

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1008639314265

Navigation