Consensus on Transaction Commit
<|reference_start|>Consensus on Transaction Commit: 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. Running a Paxos consensus algorithm on the commit/abort decision of each participant yields a transaction commit protocol that uses 2F +1 coordinators and makes progress if at least F +1 of them are working. In the fault-free case, this algorithm requires one extra message delay but has the same stable-storage write delay as Two-Phase Commit. The classic Two-Phase Commit algorithm is obtained as the special F = 0 case of the general Paxos Commit algorithm.<|reference_end|>
@article{gray2004consensus,
    title={Consensus on Transaction Commit},
    author={Jim Gray, Leslie Lamport},
    journal={arXiv preprint arXiv:cs/0408036},
    year={2004},
    number={MSR-TR-2003-96},
    archivePrefix={arXiv},
    eprint={cs/0408036},
    primaryClass={cs.DC cs.DB}
}