On liveness of dynamic storage

Alexander Spiegelman, Idit Keidar

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Dynamic distributed storage algorithms such as DynaStore, Reconfigurable Paxos, RAMBO, and RDS, do not ensure liveness (wait-freedom) in asynchronous runs with infinitely many reconfigurations. We prove that this is inherent for asynchronous dynamic storage algorithms. Our result holds even if only one process may fail, provided that machines that were successfully removed from the system’s configuration can be switched off by a system administrator. To circumvent this result, we define a dynamic eventually perfect failure detector, and present an algorithm that uses it to emulate wait-free dynamic atomic storage. Though some of the previous algorithms have been designed for eventually synchronous models, to the best of our knowledge, our algorithm is the first to ensure liveness for all operations without restricting the reconfiguration rate.

Original languageEnglish
Title of host publicationStructural Information and Communication Complexity - 24th International Colloquium, SIROCCO 2017, Revised Selected Papers
EditorsShantanu Das, Sebastien Tixeuil
Pages356-376
Number of pages21
DOIs
StatePublished - 2017
Event24th International Colloquium on Structural Information and Communication Complexity, SIROCCO 2017 - Porquerolles, France
Duration: 19 Jun 201722 Jun 2017

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume10641 LNCS

Conference

Conference24th International Colloquium on Structural Information and Communication Complexity, SIROCCO 2017
Country/TerritoryFrance
CityPorquerolles
Period19/06/1722/06/17

All Science Journal Classification (ASJC) codes

  • Theoretical Computer Science
  • General Computer Science

Fingerprint

Dive into the research topics of 'On liveness of dynamic storage'. Together they form a unique fingerprint.

Cite this