Advertisement

On Liveness of Dynamic Storage

  • Alexander SpiegelmanEmail author
  • Idit Keidar
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10641)

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.

References

  1. 1.
    Aguilera, M.K., Keidar, I., Malkhi, D., Martin, J.P., Shraer, A., et al.: Reconfiguring replicated atomic storage: a tutorial. Bull. EATCS 102, 84–108 (2010)MathSciNetzbMATHGoogle Scholar
  2. 2.
    Aguilera, M.K., Keidar, I., Malkhi, D., Shraer, A.: Dynamic atomic storage without consensus. J. ACM 58(2), 7 (2011)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Attiya, H., Bar-Noy, A., Dolev, D.: Sharing memory robustly in message-passing systems. J. ACM (JACM) 42(1), 124–142 (1995)CrossRefzbMATHGoogle Scholar
  4. 4.
    Attiya, H., Chung, H.C., Ellen, F., Kumar, S., Welch, J.L.: Simulating a shared register in an asynchronous system that never stops changing. In: Moses, Y. (ed.) DISC 2015. LNCS, vol. 9363, pp. 75–91. Springer, Heidelberg (2015).  https://doi.org/10.1007/978-3-662-48653-5_6 CrossRefGoogle Scholar
  5. 5.
    Baldoni, R., Bonomi, S., Kermarrec, A.M., Raynal, M.: Implementing a register in a dynamic distributed system. In: 29th IEEE International Conference on Distributed Computing Systems, ICDCS 2009, pp. 639–647. IEEE (2009)Google Scholar
  6. 6.
    Baldoni, R., Bonomi, S., Raynal, M.: Regular register: an implementation in a churn prone environment. In: Kutten, S., Žerovnik, J. (eds.) SIROCCO 2009. LNCS, vol. 5869, pp. 15–29. Springer, Heidelberg (2010).  https://doi.org/10.1007/978-3-642-11476-2_3 CrossRefGoogle Scholar
  7. 7.
    Baldoni, R., Bonomi, S., Raynal, M.: Implementing a regular register in an eventually synchronous distributed system prone to continuous churn. IEEE Trans. Parallel Distrib. Syst. 23(1), 102–109 (2012)CrossRefGoogle Scholar
  8. 8.
    Birman, K., Malkhi, D., Van Renesse, R.: Virtually synchronous methodology for dynamic service replication (2010)Google Scholar
  9. 9.
    Chockler, G., Gilbert, S., Gramoli, V., Musial, P.M., Shvartsman, A.A.: Reconfigurable distributed storage for dynamic networks. J. Parallel Distrib. Comput. 69(1), 100–116 (2009)CrossRefzbMATHGoogle Scholar
  10. 10.
    Chockler, G.V., Keidar, I., Vitenberg, R.: Group communication specifications: a comprehensive study. ACM Comput. Surv. (CSUR) 33(4), 427–469 (2001)CrossRefGoogle Scholar
  11. 11.
    Dwork, C., Lynch, N., Stockmeyer, L.: Consensus in the presence of partial synchrony. J. ACM 35(2), 288–323 (1988)MathSciNetCrossRefGoogle Scholar
  12. 12.
    Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Gafni, E., Malkhi, D.: Elastic configuration maintenance via a parsimonious speculating snapshot solution. In: Moses, Y. (ed.) DISC 2015. LNCS, vol. 9363, pp. 140–153. Springer, Heidelberg (2015).  https://doi.org/10.1007/978-3-662-48653-5_10 CrossRefGoogle Scholar
  14. 14.
    Gilbert, S., Lynch, N., Shvartsman, A.: RAMBO II: rapidly reconfigurable atomic memory for dynamic networks. In: DSN. IEEE Computer Society (2003)Google Scholar
  15. 15.
    Gilbert, S., Lynch, N.A., Shvartsman, A.A.: RAMBO: a robust, reconfigurable atomic memory service for dynamic networks. Distrib. Comput. 23(4), 225–272 (2010)CrossRefzbMATHGoogle Scholar
  16. 16.
    Herlihy, M.P., Wing, J.M.: Linearizability: a correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst. 12(3), 463–492 (1990)CrossRefGoogle Scholar
  17. 17.
    Jehl, L., Meling, H.: The case for reconfiguration without consensus. In: Proceedings of the 2016 ACM Symposium on Principles of Distributed Computing. ACM (2016)Google Scholar
  18. 18.
    Jehl, L., Vitenberg, R., Meling, H.: SmartMerge: a new approach to reconfiguration for atomic storage. In: Moses, Y. (ed.) DISC 2015. LNCS, vol. 9363, pp. 154–169. Springer, Heidelberg (2015).  https://doi.org/10.1007/978-3-662-48653-5_11 CrossRefGoogle Scholar
  19. 19.
    Ko, S.Y., Hoque, I., Gupta, I.: Using tractable and realistic churn models to analyze quiescence behavior of distributed protocols. In: IEEE Symposium on Reliable Distributed Systems, SRDS 2008, pp. 259–268. IEEE (2008)Google Scholar
  20. 20.
    Lamport, L.: On interprocess communication. Distrib. Comput. 1(2), 86–101 (1986)MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Lamport, L., Malkhi, D., Zhou, L.: Reconfiguring a state machine. ACM SIGACT News 41(1), 63–73 (2010)CrossRefGoogle Scholar
  22. 22.
    Lin, K., Hadzilacos, V.: Asynchronous group membership with oracles. In: Jayanti, P. (ed.) DISC 1999. LNCS, vol. 1693, pp. 79–94. Springer, Heidelberg (1999).  https://doi.org/10.1007/3-540-48169-9_6 CrossRefGoogle Scholar
  23. 23.
    Lynch, N., Shvartsman, A.A.: RAMBO: a reconfigurable atomic memory service for dynamic networks. In: Malkhi, D. (ed.) DISC 2002. LNCS, vol. 2508, pp. 173–190. Springer, Heidelberg (2002).  https://doi.org/10.1007/3-540-36108-1_12 CrossRefGoogle Scholar
  24. 24.
    Mostefaoui, A., Raynal, M., Travers, C., Patterson, S., Agrawal, D., Abbadi, A.E.: From static distributed systems to dynamic systems. In: 24th IEEE Symposium on Reliable Distributed Systems, SRDS 2005, pp. 109–118. IEEE (2005)Google Scholar
  25. 25.
    Shraer, A., Martin, J.P., Malkhi, D., Keidar, I.: Data-centric reconfiguration with network-attached disks. In: LADIS 2010 (2010)Google Scholar
  26. 26.
    Spiegelman, A., Keidar, I., Malkhi, D.: Dynamic reconfiguration: a tutorial. In: OPODIS (2015)Google Scholar
  27. 27.
    Spiegelman, A., Keidar, I., Malkhi, D.: Dynamic reconfiguration: abstraction and optimal asynchronous solution. In: DISC (2017)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.Viterbi EE DepartmentTechnionHaifaIsrael

Personalised recommendations