Consistent Cut
In plain English
Plain definition
A globally-derived snapshot of process states where no recorded state reflects receiving a message whose corresponding send is absent from the snapshot.
A consistent cut is the abstract correctness criterion underlying every distributed snapshot mechanism. Given a system of processes communicating exclusively via messages, a cut is simply a selection of one local state per process, visualized as a jagged line across a space-time diagram of process timelines. The cut is consistent if it never records the receipt of a message without also recording that message’s send — equivalently, the cut respects Lamport’s happens-before relation. An inconsistent cut captures an effect (a received message) without its cause (the corresponding send), producing a global state that could never have actually existed at any real instant, even under relativistic notions of simultaneity in an async network.
The practical significance is that consistency of the cut is what makes a derived global state meaningful for reasoning — it guarantees the captured state is reachable from the true initial global state via some valid interleaving of events, and that the real execution can reach some future state from it. Algorithms like the Chandy-Lamport snapshot protocol exist specifically to construct a consistent cut without pausing the system or requiring synchronized clocks: they use marker messages flushed through FIFO channels so that each process records its state at the moment it first sees a marker, and records in-flight channel messages that arrive between its own recording and the marker’s arrival on that channel. The marker-based flush is a mechanical technique; the consistent cut is the property it guarantees.
Edge cases dominate the reasoning here. Non-FIFO channels break the naive marker technique because a data message can overtake its marker, so systems either enforce channel ordering or attach logical timestamps to detect reordering. Multiple concurrent snapshot initiations must be deduplicated or the recorded cuts diverge. In systems with vector clocks or interval tree clocks, a consistent cut can be derived after the fact from causal metadata rather than being constructed online — this is common in debugging and distributed tracing reconstruction, where a consistent cut is retroactively assembled from causally-tagged events to answer “what did the system look like at a valid instant near time T”. Checkpoint/recovery systems also depend on this property: a set of process checkpoints used for coordinated rollback must form a consistent cut, or recovery will resurrect a state where an effect exists without its cause, corrupting invariants that downstream logic assumes hold.
Understanding consistent cuts reframes global-state questions from an operational “how do I pause and read everything” problem into a causal-ordering problem, which is the correct mental model for reasoning about snapshots, distributed debugging, and rollback-recovery correctness in systems that never share a global clock.