Skip to Main Content
Unreliable failure detectors are abstract devices that, when added to asynchronous distributed systems, enable solving distributed computing problems (e.g., Consensus) that otherwise would be impossible to solve in these systems. This paper focuses on two classes of failure detectors defined by Chandra and Toueg, namely, the classes denoted /spl Lozenge/P (eventually perfect) and /spl Lozenge/S (eventually strong). Both classes include failure detectors that eventually detect permanently all process crashes, but while the failure detectors of /spl Lozenge/P eventually make no erroneous suspicions, the failure detectors of /spl Lozenge/S are only required to eventually not suspect a single correct process. Informally, in a one-shot agreement problem, a new problem instance is created each time the processes propose new values to be decided on (e.g., Consensus is one-shot). In such a context, this paper addresses the following question related to the comparative power of these classes, namely: "Are there one-shot agreement problems that can be solved in asynchronous distributed systems with reliable links but prone to process crash failures augmented with /spl Lozenge/P, but cannot be solved when those systems are augmented with /spl Lozenge/S ?" Surprisingly, the paper shows that the answer to this question is "no." An important consequence of this result is that /spl Lozenge/P cannot be the weakest class of failure detectors that enables solving one-shot agreement problems in unreliable asynchronous distributed systems.