Sources & scope
Original explanations, primary sources, and explicit boundaries.
Sources checked for this edition on 2026-11-14. Papers and third-party figures are linked, not copied or bundled. Course diagrams and examples are original. The implementation is pinned to etcd 3.6.6; newer documentation or releases do not retroactively change the recorded run.
- Lamport, 1978
Causality and logical clocks; chapter 2.
- Herlihy & Wing, 1990
Operation histories and linearizability; chapters 2–3 and the workbench.
- Fischer, Lynch & Paterson, 1985
Asynchronous model and termination limits; chapter 1.
- Ongaro & Ousterhout, 2014
Raft extended paper; log safety, snapshots and client retries.
- Burrows, 2006 — Chubby
Sequencers and delayed requests, §2.4; chapter 6.
- MIT 6.5840
Further course study; this Lab is independent, not an MIT course copy.
- etcd 3.6 · API guarantees
Version-scoped implementation reference.
- etcd 3.6 · Failure modes
Version-scoped implementation reference.
- etcd 3.6 · JSON gateway
Version-scoped implementation reference.
- etcd 3.6 · API reference
Version-scoped implementation reference.
- etcd 3.6 · Recovery
Version-scoped implementation reference.
- etcd 3.6 · FAQ
Version-scoped implementation reference.
- etcd 3.6 · v3.6.6 release
Version-scoped implementation reference.
Reading and experiment boundaries
The course covers crash/recovery coordination, a single consensus group, completed single-register histories and a deliberately small downstream fence. It does not teach all of distributed systems: sharding, BFT, CRDT implementation, distributed garbage collection, production authentication, packet fault matrices and verified disaster restore remain extensions. No learning-effect measurement has been performed.
The real-run report is generated from the selected assertions, with hashes for integrity. Timings are observations, not benchmarks with statistical power. The search checker can return inconclusive and does not consume unknown-outcome calls.