Abstract
An indulgent algorithm is a distributed algorithm that, besides tolerating process failures, also tolerates arbitrarily long periods of instability, with an unbounded number of timing and scheduling failures. In particular, no process can take any irrevocable action based on the operational status, correct or failed, of other processes. This paper presents an intuitive and general characterization of indulgence. The characterization can be viewed as a simple application of Murphy’s law to partial runs of a distributed algorithm, in a computing model that encompasses various communication and resilience schemes. We use our characterization to establish several results about the inherent power and limitations of indulgent algorithms.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Alpern, B., Schneider, F.B.: Defining liveness. Information Processing Letters 21(4), 181–185 (1985)
Attiya, H., Bar-Noy, A., Dolev, D.: Sharing memory robustly in message passing systems. Journal of the ACM 42(2), 124–142 (1995)
Chandra, T.D., Hadzilacos, V., Toueg, S.: The weakest failure detector for solving consensus. Journal of the ACM 43(4), 685–722 (1996)
Chandra, T.D., Toueg, S.: Unreliable failure detectors for reliable distributed systems. Journal of the ACM 43(2), 225–267 (1996)
Chauduri, S.: More choices allow more faults: Set consensus problems in totally asynchronous systems. Information and Computation 105(1), 132–158 (1993)
Dutta, P., Guerraoui, R.: The inherent price of indulgence. In: PODC 2002: Proceedings of the annual ACM symposium on Principles of distributed computing, pp. 88–97 (2002)
Dwork, C., Lynch, N.A., Stockmeyer, L.: Consensus in the presence of partial synchrony. Journal of the ACM 35(2), 288–323 (1988)
Fetzer, C., Schmid, U., Susskraut, M.: On the possibility of consensus in asynchronous systems with finite average response times. In: International Conference on Distributed Computing Systems, pp. 271–280. IEEE, Los Alamitos (2005)
Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. Journal of the ACM 32(2), 374–382 (1985)
Guerraoui, R.: Indulgent algorithms. In: Proceedings of the Nineteenth Annual ACM Symposium on Principles of Distributed Computing, Portland, Oregon, USA, pp. 289–297. ACM Press, New York (2000)
Guerraoui, R.: On the hardness of failure sensitive agreement problems. Information Processing Letters 79 (2001)
Guerraoui, R.: Non-blocking atomic commit in asynchronous distributed systems with failure detectors. Distributed Computing 15(1), 17–25 (2002)
Guerraoui, R., Raynal, M.: The information structure of indulgent consensus. IEEE Trans. Computers 53(4), 453–466 (2004)
Hadzilacos, V., Toueg, S.: Fault-tolerant broadcasts and related problems. In: Mullender, S.J. (ed.) Distributed Systems, ch. 5, pp. 97–145. Addison-Wesley, Reading (1993)
Herlihy, M.: Wait-free synchronization. ACM Transactions on Programming Languages and Systems 13(1), 123–149 (1991)
Keidar, I., Shraer, A.: Timeliness, failure detectors and consensus peformance. In: PODC 2006: Proceedings of the annual ACM symposium on Principles of distributed computing. ACM Press, New York (2006)
Lamport, L.: Proving the correctness of multiprocessor programs. Transactions on software engineering 3(2), 125–143 (1977)
Lamport, L.: How to make a multiprocessor computer that correct executes multiprocess programs. IEEE Transactions on Computers C-28(9), 690–691 (1979)
Lamport, L.: The Part-Time parliament. ACM Transactions on Computer Systems 16(2), 133–169 (1998)
Lynch, N.A.: Distributed Algorithms. Morgan Kaufmann, San Francisco (1996)
Moustefaoui, A., Raynal, M., Travers, C.: Crash-resilient time-free eventual leadership. In: Proceedings of the International Symposium on Reliable Distributed Systems, pp. 208–217. IEEE, Los Alamitos (2004)
Sampaio, L., Brasileiro, F.: Adaptive indulgent consensus. In: Proceedings of the International Conference on Dependable Systems and Networks (DSN), pp. 422–431 (2005)
Taubenfeld, G.: Computing in the presence of timing failures. In: Proceedings of the International Conference on Distributed Computing Systems (DCS) (2007)
Vicente, P., Rodrigues, L.: An indulgent uniform total order broadcast algorithm with optimistic delivery. In: Proceedings of the International Symposium on Reliable Distributed Systems (SRDS), pp. 92–80 (2002)
Zielinski, P.: Optimistically terminating consensus. In: Proceedings of the Symposium on Parallel and Distributed Computing (2006)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Guerraoui, R., Lynch, N. (2006). A General Characterization of Indulgence. In: Datta, A.K., Gradinariu, M. (eds) Stabilization, Safety, and Security of Distributed Systems. SSS 2006. Lecture Notes in Computer Science, vol 4280. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-49823-0_2
Download citation
DOI: https://doi.org/10.1007/978-3-540-49823-0_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-49018-0
Online ISBN: 978-3-540-49823-0
eBook Packages: Computer ScienceComputer Science (R0)