This preview shows page 1. Sign up to view the full content.
Unformatted text preview: ent snapshot is one in which: every process is checkpointed, and if an event happens before any event in a checkpointed process, that event is included in a checkpoint every message sent by a process before its checkpoint is either received prior to a checkpoint on the receiver (and therefore included) or logged as part of the checkpoint of the channel. For example, if we have a (one-way) channel between p and q: Snapshot of p Snapshot of q, before it has received any message sent after snapshot of p
All messages sent on channel before snapshot of p, and not received before snapshot of q
(Of course we have possibly many processes and channels.)
One possible algorithm: pick a time far in the future. Tell everyone about the time. When anyone reaches that time (in Lamport clock time), they do a local snapshot. (Also, snapshot any messages in flight at the time of the global snapshot.) This is globally consistent! If an event happens before any event in a local snapshot, it is also included in the snapshot. But suppose you want to do a snapshot...
View Full Document
This document was uploaded on 04/04/2014.
- Spring '14