liveBook · Manning

Durability

As explained in Think Distributed Systems

Durability is a transaction property requiring committed effects to persist despite subsequent failures.

Durability is the transaction guarantee that committed effects persist permanently. Once a transaction commits, the system must not later withdraw its promise or undo those effects. section 5.3 section 8.0

A useful mental model is a promise: a successful acknowledgment authorizes later actions that depend on it. Durability makes that acknowledgment trustworthy despite component failures. section 8.0

Payment before shipment

An e-commerce application may ship goods after a payment processor confirms collection. If the processor later backtracks because of failure, the goods have shipped without payment; durability prevents that broken promise. section 8.0

Durability is distinct from the other ACID guarantees:

  • Atomicity makes a transaction complete entirely or not at all. section 5.3
  • Isolation prevents concurrent transactions from interfering, while consistency expresses application-level rules. section 5.3

How Think Distributed Systems covers it

How deep it goes
Defines permanence after commit and contrasts reliable theoretical systems with failure-prone practical systems.
Examples
Uses payment confirmation followed by shipping as its concrete failure scenario.
What it assumes
Assumes basic familiarity with transactions, commits, and the ACID guarantee vocabulary.
What you can do after
Evaluate whether committed transactions can safely support later actions despite component failure.
How it connects
Connects durability with transactions, ACID guarantees, component failures, redundancy, and replication.

Also explained in

Compare how 6 books explain durability →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Think Distributed Systems. The section links point to the parts of the book it draws on.