The Dynamic Two Phase Commitment (D2PC) Protocol

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.

[1]  Andreas Reuter,et al.  Proceedings of the 2nd International Workshop on High Performance Transaction Systems , 1987 .

[2]  Ouri Wolfson,et al.  Transaction commitment at minimal communication cost , 1987, PODS '87.

[3]  Donna K. Nagata,et al.  Patterns of Communication , 1993 .

[4]  James E. Johnson,et al.  Transaction Management Support in the VMS Operating System Kernel , 1991, Digit. Tech. J..

[5]  Jim Gray,et al.  Notes on Data Base Operating Systems , 1978, Advanced Course: Operating Systems.

[6]  Bruce G. Lindsay,et al.  Transaction management in the R* distributed database management system , 1986, TODS.

[7]  Cynthia Dwork,et al.  Patterns of communication in consensus protocols , 1984, PODC '84.

[8]  Dale Skeen,et al.  Nonblocking commit protocols , 1981, SIGMOD '81.

[9]  A. Segall,et al.  Optimal communication topologies for atomic commitment , 1988, Proceedings. Fourth International Conference on Data Engineering.

[10]  B. Traverson Optimisation strategies and performance evaluation of the two-phase commit protocol , 1992, ICSE 1992.

[11]  Butler W. Lampson,et al.  Crash Recovery in a Distributed Data Storage System , 1981 .

[12]  Michael Stonebraker,et al.  A Formal Model of Crash Recovery in a Distributed System , 1983, IEEE Transactions on Software Engineering.

[13]  Kurt Rothermel,et al.  Open commit protocols for the tree of processes model , 1990, Proceedings.,10th International Conference on Distributed Computing Systems.

[14]  Cynthia Dwork,et al.  The inherent cost of nonblocking commitment , 1983, PODC '83.

[15]  C. Mohan,et al.  Two-phase commit optimizations and tradeoffs in the commercial environment , 1993, Proceedings of IEEE 9th International Conference on Data Engineering.

[16]  Ouri Wolfson,et al.  The Communication Complexity of Atomic Commitment and of Gossiping , 1991, SIAM J. Comput..

[17]  Bruce G. Lindsay,et al.  Efficient commit protocols for the tree of processes model of distributed transactions , 1985, OPSR.