Abstract
The distributed transaction commit problem requires reaching agreement on whether a transaction is committed or aborted. The classic Two-Phase Commit protocol blocks if the coordinator fails. Fault-tolerant consensus algorithms also reach agreement, but do not block whenever any majority of the processes are working. The Paxos Commit algorithm runs a Paxos consensus algorithm on the commit/abort decision of each participant to obtain a transaction commit protocol that uses 2F + 1 coordinators and makes progress if at least F + 1 of them are working properly. Paxos Commit has the same stable-storage write delay, and can be implemented to have the same message delay in the fault-free case as Two-Phase Commit, but it uses more messages. The classic Two-Phase Commit algorithm is obtained as the special F = 0 case of the Paxos Commit algorithm.
- Aguilera, M. K., Delporte-Gallet, C., Fauconnier, H., and Toueg, S. 2001. Stable leader election. In DISC '01: Proceedings of the 15th International Conference on Distributed Computing, J. L. Welch, Ed. Lecture Notes in Computer Science, vol. 2180. Springer-Verlag, Berlin, Germany, 108--122. Google ScholarDigital Library
- Alpern, B. and Schneider, F. B. 1985. Defining liveness. Inf. Process. Lett. 21, 4 (Oct.), 181--185.Google ScholarCross Ref
- Bernstein, P. A., Hadzilacos, V., and Goodman, N. 1987. Concurrency Control and Recovery in Database Systems. Addison-Wesley, Reading, MA. Google ScholarDigital Library
- Borr, A. J. 1981. Transaction monitoring in encompass: Reliable distributed transaction processing. In Proceedings of the 1981 ACM SIGMOD International Conference on Management of Data (Ann Arbor, MI, April 29-May 1), Y. E. Lien, Ed. ACM Press, New York, NY, 155--165.Google Scholar
- Charron-Bost, B. and Schiper, A. 2000. Uniform consensus is harder than consensus (extended abstract). Tech. rep. DSC/2000/028. École Polytechnique Fédérale de Lausanne, Switzerland.Google Scholar
- De Prisco, R., Lampson, B., and Lynch, N. 1997. Revisiting the Paxos algorithm. In Proceedings of the 11th International Workshop on Distributed Algorithms (WDAG 97), M. Mavronicolas and P. Tsigas, Eds. Lecture Notes in Computer Science, vol. 1320. Springer-Verlag, Saarbruken, Germany, 111--125. Google ScholarDigital Library
- Dwork, C., Lynch, N., and Stockmeyer, L. 1988. Consensus in the presence of partial synchrony. J. Assoc. Comput. Mach. 35, 2 (Apr.), 288--323. Google ScholarDigital Library
- Fischer, M. J., Lynch, N., and Paterson, M. S. 1985. Impossibility of distributed consensus with one faulty process. J. Assoc. Comput. Mach. 32, 2 (Apr.), 374--382. Google ScholarDigital Library
- Gray, J. 1978. Notes on data base operating systems. In Operating Systems: An Advanced Course, R. Bayer, R. M. Graham, and G. Seegmuller, Eds. Lecture Notes in Computer Science, vol. 60. Springer-Verlag, Berlin, Heidelberg, Germany/New York, NY, 393--481. Google ScholarDigital Library
- Guerraoui, R. 1995. Revisiting the relationship between nonblocking atomic commitment and consensus. In Proceedings of the 9th International Workshop on Distributed Algorithms (WDAG95), J.-M. Hélary and M. Raynal, Eds. Lecture Notes in Computer Science, vol. 972. Spring-er-Ver-lag, Le Mont-Saint-Michel, France, 87--100. Google ScholarDigital Library
- Guerraoui, R., Larrea, M., and Schiper, A. 1996. Reducing the cost for nonblocking in atomic commitment. In Proceedings of the 16th International Conference on Distributed Computing Systems (ICDCS). IEEE Computer Society Press, Los Alamitos, CA, 692--697. Google ScholarDigital Library
- Lamport, L. 1998. The part-time parliament. ACM Trans. Comput. Syst. 16, 2 (May), 133--169. Google ScholarDigital Library
- Lamport, L. 2001. Paxos made simple. ACM SIGACT News (Distributed Computing Column) 32, 4 (Dec.), 18--25.Google Scholar
- Lamport, L. 2003. Specifying Systems. Addison-Wesley, Boston, MA. A link to an electronic copy can be found online at http://lamport.org.Google Scholar
- Lampson, B. W. 1996. How to build a highly available system using consensus. In Distributed Algorithms, O. Babaoglu and K. Marzullo, Eds. Lecture Notes in Computer Science, vol. 1151. Springer-Verlag, Berlin, Germany, 1--17. Google ScholarDigital Library
- Mohan, C., Strong, R., and Finkelstein, S. 1983. Method for distributed transaction commit and recovery using Byzantine agreement within clusters of processors. In Proceedings of the Second Annual ACM Symposium on Principles of Distributed Computing. The ACM Press, New York, NY, 29--43. Google ScholarDigital Library
- Newcomer, E. 2002. Understanding Web Services. Addison-Wesley, Boston, MA.Google Scholar
- Pease, M., Shostak, R., and Lamport, L. 1980. Reaching agreement in the presence of faults. J. Assoc. Comput. Mach. 27, 2 (Apr.), 228--234. Google ScholarDigital Library
- Skeen, D. 1981. Nonblocking commit protocols. In SIGMOD '81: Proceedings of the 1981 ACM SIGMOD International Conference on Management of Data. ACM Press, New York, NY, 133--142. Google ScholarDigital Library
Index Terms
- Consensus on transaction commit
Recommendations
Multi-shot distributed transaction commit
AbstractAtomic Commit Problem (ACP) is a single-shot agreement problem similar to consensus, meant to model the properties of transaction commit protocols in fault-prone distributed systems. We argue that ACP is too restrictive to capture the complexities ...
Logless one-phase commit made possible for highly-available datastores
AbstractHighly-available datastores are widely deployed for Internet-based applications. However, many Internet-based applications are not contented with the simple data access interface provided by highly-available datastores. Distributed transaction ...
Dictatorial Transaction Processing: Atomic Commitment Without Veto Right
The current standard in governing distributed transaction termination is the so-called Two-Phase Commit protocol (2PC). The first phase of 2PC is a voting phase, where the participants in the transaction are given an ultimate right to abort that ...
Comments