Content deleted Content added
→History: minor fixes and improvements Tags: Mobile edit Mobile web edit Advanced mobile edit |
|||
(30 intermediate revisions by 25 users not shown) | |||
Line 1:
{{one source |date=May 2024}}
The '''
Leslie Lamport, K. Mani Chandy: [https://research.microsoft.com/users/lamport/pubs/pubs.html#chandy ''Distributed Snapshots: Determining Global States of a Distributed System'']. In: ''ACM Transactions on Computer Systems 3''. Nr. 1, February 1985. ([http://lamport.azurewebsites.net/pubs/chandy.pdf PDF; 1 MB])</ref>
==History==
According to [http://research.microsoft.com/users/lamport/pubs/pubs.html#chandy Leslie Lamport's website],
==Definition==
Line 14:
* The snapshot algorithm does not interfere with the normal execution of the processes
* Each process in the system records its local state and the state of its incoming channels
The algorithm works using marker messages. Each process that wants to initiate a snapshot records its local state and sends a marker on each of its outgoing channels. All the other processes, upon receiving a marker, record their local state, the state of the channel from which the marker just came as empty, and send marker messages on all of their outgoing channels. If a process receives a marker after having recorded its local state, it records the state of the incoming channel from which the marker came as carrying all the messages received since it first recorded its local state.
Line 21 ⟶ 20:
==Algorithm==
The
# The observer process (the process taking a snapshot):
## Saves its own local state
Line 28:
## Sends the observer process its own saved state
## Attaches the snapshot token to all subsequent messages (to help propagate the snapshot token)
#
From this, the observer builds up a complete snapshot: a saved state for each process and all messages “in the ether” are saved.
==References==
{{Reflist}}
{{DEFAULTSORT:Chandy-Lamport algorithm}}
[[Category:Distributed algorithms]]
|