Practically-self-stabilizing vector clocks in the absence of execution fairness
Paper in proceeding, 2019

Vector clock algorithms are basic wait-free building blocks that facilitate causal ordering of events. As wait-free algorithms, they are guaranteed to complete their operations within a finite number of steps. Stabilizing algorithms allow the system to recover after the occurrence of transient faults, such as soft errors and arbitrary violations of the assumptions according to which the system was designed to behave. We present the first, to the best of our knowledge, stabilizing vector clock algorithm for asynchronous crash-prone message-passing systems that can recover in a wait-free manner after the occurrence of transient faults (as well as communication and crash failures) in the absence of execution fairness. We use bounded message and storage sizes and do not rely on any means of synchronization. The proposed algorithm provides bounded time recovery during fair executions that follow the last transient fault. The novelty is for the case of more challenging settings that consider no execution fairness. The proposed algorithm guarantees a bound on the number of times in which the system might violate safety (while existing algorithms might block forever due to the presence of both transient faults and crash failures).

Author

Iosif Salem

Chalmers, Computer Science and Engineering (Chalmers), Networks and Systems (Chalmers)

Elad Schiller

Chalmers, Computer Science and Engineering (Chalmers), Networks and Systems (Chalmers)

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

03029743 (ISSN) 16113349 (eISSN)

Vol. 11028 LNCS 318-333

6th International Conference on Networked Systems, NETYS 2018
Essaouira, Morocco,

Subject Categories

Computer Engineering

Control Engineering

Computer Systems

DOI

10.1007/978-3-030-05529-5_21

More information

Latest update

2/18/2019