Skip to main content

Recovery prediction practice

  1. For after-images 7,3,9, predict durable log, durable data and recovered state before and after every append, persist-log, apply-data, persist-data and acknowledge step.
  2. Enumerate prefix lengths 0–8 of the first two records. Explain why lengths 4–7 recover 7 while length 8 recovers 3.
  3. Put the response before persistence and show a lost acknowledged update. Then place the response immediately after log persistence and explain why a stale data page is recoverable.
  4. Crash after durable commit but before response. State what the client cannot know and why retrying a non-idempotent operation needs another protocol.
  5. Corrupt one complete record and contrast it with a torn final suffix. Do not silently resynchronize after corruption.
  6. Replace assignment replay with addition. Predict recovery twice from checkpoints 0 and 7 and explain the error.

Preserve predictions before execution, repairs and assistance disclosures. After 48 hours, use new values and a different cut. Explain which result would cease to be guaranteed if a completed persistence operation could lose previously durable bytes.