Abstract
Since the Two Phase Commitment (2PC) protocol is an essential component for Distributed Transaction Processing, needed in the commit process of each distributed transaction, a substantial effort has been invested in optimizing its performance. The Dynamic Two Phase Commitment (D2PC) protocol is an enhancement of the common (static) Tree Two Phase Commitment (T2PC) protocols. Unlike T2PC, with D2PC the commit coordinator is dynamically determined by racing READY (YES vote) messages, on a per transaction basis, rather than being fixed, predetermined. As a result, the protocol commits each transaction participant in minimum possible time, allowing early release of locked resources. This result is true for the various existing variants of T2PC. D2PC subsumes several T2PC optimizations that have been proposed earlier.
This work was written while the author was employed by Digital Equipment Corporation. Previous versions appeared as DEC-TR 871.
A detailed design of D2PC has been developed by the members of the ISO-IEC/JTC1/OSI-DTP&CCR groups. Many thanks are due to all of them for stimulating discussions. Bruno Traverson provided helpful comments on the protocols' formulations presented here, and Alon Itai and Shlomo Moran contributed algorithms and complexity results for the minimum-diameter spanning tree problem. Their contributions are greatly appreciated.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
P. Bernstein, V. Hadzilacos, N. Goodman, Concurrency Control and Recovery in Database Systems, Addison-Wesley, 1987.
Braginsky, E., “The X/Open Effort”, Proc. 4th Int. Workshop on High Performance Transaction Systems, Asilomar, CA, September 1991.
J. Johnson, W. Laing, R. Landau, “Transaction Management Support in the VMS Operating System Kernel”, Digital Technical Journal, Vol 3, no. 1, Winter 1991.
Philip A. Bernstein, William T. Emberton, Vijay Trehan, “DECdta — Digital's Distributed Transaction Processing Architecture”, Digital Technical Journal, Vol 3, no. 1.Winter 1991.
C. Dwork, D. Skeen, “The inherent Cost of Nonblocking Commitment”, Proc. 2nd ACM Symp. on PODC, pp. 1–11, 1983.
C. Dwork, D. Skeen, “Patterns of Communication in Consensus Protocols”, Proc. 3rd ACM Symp. on PODC, pp. 143–153, 1984.
Gray, J. N., “Notes on Database Operating Systems”, Operating Systems: An Advanced Course, Lecture Notes in Computer Science 60, pp. 393–481, Springer-Verlag, 1978.
Alon Itai, privat communications.
Alon Itai, Shlomo Moran, privat communications.
Lampson, B., Sturgis, H., “Crash Recovery in a Distributed Data Storage System”, Technical Report, Xerox, Palo Alto Research Center, Palo Alto, California, 1976.
System Network Architecture — Format and Protocol Reference Manual: Architecture Logic for LU Type 6.2, SC30-3269-3, International Business Machines Corporation, 1985.
C. Mohan, B. Lindsay, “Efficient Commit Protocols for the Tree of Processes Model of Distributed Transactions”, Proc. 2nd ACM Symp. on PODC, pp. 76–88, 1983.
C. Mohan, B. Lindsay, R. Obermarck, “Transaction Management in the R* Distributed Database Management System”, ACM TODS 11(4), pp. 378–396, 1986.
ISO/IEC IS 9804, 9805, JTC1/SC21, Information Processing Systems — Open Systems Interconnection — Commitment, Concurrency and Recovery service element, 1989.
ISO/IEC IS 10026 (1, 2, 3), JTC1/SC21, Information Processing Systems — Open Systems Interconnection — Distributed Transaction Processing, 1992.
Y. Raz, R. Sijelmassi, B. Traverson, S. Usiskin, “The Constrained Dynamic Two Phase Commit Protocol”, Draft, Ottawa, Canada, June 1992. (During the ISO/JTC1/SC21 meeting)
Kurt Rothermel, Stefan Pappe, “Open Commit Protocols for the Tree of Processes Model”, Proc 10th IEEE Int. Conf. on Dist. Computing Sys., pp. 236–244, 1990.
George Samaras, Katheryn Britton, Andrew Citron, C. Mohan, “Two Phase Commit Optimizations and Tradeoffs in the Commercial Environment”, Proc. 9th Int. Conf. on Data Engineering, pp. 520–529, Viena, Austria, April 1993.
Adrian Segall, Ouri Wolfson, “Transaction Commitment at Minimal Communication Cost”, Proc. 6th ACM Symp. on PODS, pp. 112–118, 1987
Adrian Segall, Ouri Wolfson, “Optimal Communication Topologies for Atomic Commitment”, Proc. 6th IEEE Int. Conf. on Data Eng., 1988.
D. Skeen, “Nonblocking Commit Protocols”, Proc. ACM SIGMOD, pp. 133–142, 1981.
Dale Skeen, Michael Stonebraker, “A Formal Model of Crash Recovery in Distributed Systems”, IEEE Trans. Soft. Eng. 9(3), pp. 219–227, 1983
Bruno Traverson, Optimization Strategies and Performance Evaluation for the Two Phase Commit Protocol”, Doctoral Thesis, University of Paris 6, September 25, 1991.
Upton IV, F., “OSI Distributed Transaction Processing — An Overview”, Proc. 4th Int. Workshop on High Performance Transaction Systems, Asilomar, CA, September 1991.
Ouri Wolfson, “The Communication Complexity of Atomic Commitment and of Gossiping”, SIAM J. Computing, 20(3), pp. 423–450, June 1991.
X/ Open Guide — Distributed Transaction Processing Reference Model, X/Open Company Ltd., No G120, 1991.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Raz, Y. (1995). The Dynamic Two Phase Commitment (D2PC) protocol. In: Gottlob, G., Vardi, M.Y. (eds) Database Theory — ICDT '95. ICDT 1995. Lecture Notes in Computer Science, vol 893. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58907-4_14
Download citation
DOI: https://doi.org/10.1007/3-540-58907-4_14
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-58907-5
Online ISBN: 978-3-540-49136-1
eBook Packages: Springer Book Archive