Three-phase Commit (3PC)

 Three-phase Commit (3PC)


Pre-requisite: Read about Two-phase commit (2PC), then come back here for better understanding. 

  • Two-phase commit (2PC) is called a blocking atomic commit protocol due to fact that 2PC can become stuck waiting for the coordinator to recover. 
  • 3PC assumes a network with bounded delay and nodes with bounded response time. 
  • In general, nonblocking atomic commit requires a perfect failure detector. I.e. a reliable mechanism for telling whether a node has crashed or not. 
  • In a network with unbounded delay, a timeout is not a reliable failure detector, because a request may timeout due to a network problem even if no node has crashed. 
  • For this reason, 2PC continues to be used, despite the known problem with coordinator failure. 


Comments

Popular posts from this blog

Distributed Lock with Redlock

Distributed Transaction

Storage Engine