ABSTRACT
Herlihy's consensus hierarchy ranks the power of various synchronization primitives for solving consensus in a model where asynchronous processes communicate through shared memory, and may fail by halting. This paper revisits the consensus hierarchy in a model with crash-recovery failures, where the specification of consensus, called recoverable consensus in this paper, is weakened by allowing non-terminating executions when a process fails infinitely often. Two variations of this model are considered: with independent process failures, and with simultaneous (i.e., system-wide) process failures. We prove two fundamental results: (i) Test-And-Set is at level 2 of the recoverable consensus hierarchy if failures are simultaneous, and similarly for any primitive at level 2 of the traditional consensus hierarchy; and (ii) Test-And-Set drops to level 1 of the hierarchy if failures are independent, unless the number of such failures is bounded. To our knowledge, this is the first separation between the simultaneous and independent crash-recovery failure models with respect to the computability of consensus.
- Hagit Attiya, Ohad Ben-Baruch, and Danny Hendler. Nesting-safe recoverable linearizability: Modular constructions for non-volatile memory. In Proc. of the 2018 ACM Symposium on Principles of Distributed Computing (PODC), pages 7--16, 2018. Google ScholarDigital Library
- Ryan Berryhill, Wojciech Golab, and Mahesh Tripunitara. Robust shared objects for non-volatile main memory. In Proc. of the 19th International Conference on Principles of Distributed Systems (OPODIS), pages 20:1--20:17, 2016.Google Scholar
- Wojciech Golab. Recoverable consensus in shared memory. CoRR, 2018. URL https://arxiv.org/abs/1804.10597.Google Scholar
- Maurice Herlihy. Wait-free synchronization. ACM Transactions on Programming Languages and Systems, 13 (1): 124--149, 1991. Google ScholarDigital Library
Index Terms
- The Recoverable Consensus Hierarchy
Recommendations
The Recoverable Consensus Hierarchy
SPAA '20: Proceedings of the 32nd ACM Symposium on Parallelism in Algorithms and ArchitecturesHerlihy's consensus hierarchy ranks the power of various synchronization primitives for solving consensus in a model where asynchronous processes communicate through shared memory, and may fail by halting. This paper revisits the consensus hierarchy in ...
When is Recoverable Consensus Harder Than Consensus?
PODC'22: Proceedings of the 2022 ACM Symposium on Principles of Distributed ComputingWe study the ability of different shared object types to solve recoverable consensus using non-volatile shared memory in a system with crashes and recoveries. In particular, we compare the difficulty of solving recoverable consensus to the difficulty of ...
Nesting-Safe Recoverable Linearizability: Modular Constructions for Non-Volatile Memory
PODC '18: Proceedings of the 2018 ACM Symposium on Principles of Distributed ComputingWe presents a novel abstract individual-process crash-recovery model for non-volatile memory, which enables modularity, so that complex recoverable objects can be constructed in a modular manner from simpler recoverable base objects. Within the ...
Comments