Eventually consistent failure detectors
The concept of unreliable failure detector was introduced by Chandra and Toueg as a mechanism that provides information about process failures. This mechanism has been used to solve different problems in asynchronous systems, in particular the Consensus problem. In this paper, we present a new class of unreliable failure detectors, which we call Eventually Consistent and denote by lozenge C. This class combines the failure detection capabilities of class lozenge S with the eventual leader election capability of class Omega. This capability allows all correct processes to eventually choose the same correct process as leader. We study the relationship between lozenge C and other classes of failure detectors. We also propose an efficient algorithm to transform lozenge C into lozenge P in models of partial synchrony. Finally, to show the power of this new class of failure detectors, we present a Consensus algorithm based on lozenge C. This algorithm successfully exploits both the leader election and the failure detection capabilities of the failure detector, and performs better in number of rounds than all the previously proposed algorithms for lozenge S. (c) 2005 Elsevier Inc. All rights reserved.
failure detection unreliable failure detectors consensus problem leader election partial synchrony crash failures distributed systems