What is replication an answer to?
- Clocks drifting apart so timestamps cannot be trusted
- Messages overtaking each other on different routes
- One machine failing and taking the only copy with it
You call a node and hear nothing. Which two states of the node itself look exactly this way from outside?
- A crash and mere slowness
- A healthy node and one that replies with an error
- Slowness and a full disk
A replica promises to serve only what it has caught up with. After rejoining with stale state, it may serve reads immediately.
Circle one: True False
Why do systems use timeouts if a timeout cannot prove a crash?
- Timeouts let the system act despite never knowing for sure
- Timeouts prove the node crashed
- Timeouts restart crashed disks
A node misses three writes while down, then rejoins. What are its correct steps?
- Serve reads at once, then copy the writes quietly
- Copy the three missed writes, then serve reads
- Delete its copy and stay silent forever
A replica returns a value that the primary never wrote. Which promise did the replica break?
- Answering every client request within a fixed time
- Keeping a durable copy of its data on local disk
- Serving only what it has copied from the primary
Replicas copy the primary's writes after a short delay. Two clients read the same key from two healthy replicas at the same moment and get different values. What is the most likely story?
- One replica is stale and has not yet caught up
- The primary wrote two values for the key at once
- One replica crashed and is answering from memory
A designer treats every silent node as crashed and deletes its data. One slow node returns to find its copy wiped. What was the design error?
- Timeouts were set too generously
- Silence was read as proof of crash, which it never is
- Replication was used where a single copy sufficed