CentralNotice Three-phase commit protocol From Wikipedia, the free encyclopedia Jump to: navigation , search In computer networking and databases , the three-phase commit protocol (3PC) [ 1 ] is a distributed algorithm which lets all nodes in a distributed system agree to commit a transaction . Unlike the two-phase commit protocol (2PC) however, 3PC is non-blocking. Specifically, 3PC places an upper bound on the amount of time required before a transaction either commits or aborts . This property ensures that if a given transaction is attempting to commit via 3PC and holds some resource locks , it will release the locks after the timeout. 3PC was originally described by Dale Skeen and Michael Stonebraker in their paper, “A Formal Model of Crash Recovery in a Distributed System”. [ 1 ] In that work, they modeled 2PC as a system of non-deterministic finite state automata an...