Snapshot Algorithm - Working

Working

The snapshot algorithm works like this:

  1. The observer process (the process taking a snapshot):
    1. Saves its own local state
    2. Sends a snapshot request message bearing a snapshot token to all other processes
  2. A process receiving the snapshot token for the first time on any message:
    1. Sends the observer process its own saved state
    2. Attaches the snapshot token to all subsequent messages (to help propagate the snapshot token)
  3. Should a process that has already received the snapshot token receive a message that does not bear the snapshot token, this process will forward that message to the observer process. This message was obviously sent before the snapshot “cut off” (as it does not bear a snapshot token and thus must have come from before the snapshot token was sent out) and needs to be included in the snapshot.

From this, the observer builds up a complete snapshot: a saved state for each process and all messages “in the ether” are saved.

Read more about this topic:  Snapshot Algorithm

Famous quotes containing the word working:

    “A perpetual holiday is a good working definition of hell.”
    —George Bernard Shaw (1856–1950)

    “I meet him at every turn. He is more alive than ever he was. He has earned immortality. He is not confined to North Elba nor to Kansas. He is no longer working in secret. He works in public, and in the clearest light that shines on this land.”
    —Henry David Thoreau (1817–1862)

    “I was always pretending that I was a poor-working-girl, always forgetting that I was really poor M also a working girl.”
    —Margaret Anderson (1886–1973)