liveBook · Manning

Read repair

As explained in ScyllaDB in Action

Read repair is a replica-reconciliation technique that detects inconsistent read responses and updates divergent replicas.

Read repair is ScyllaDB’s read-time reconciliation mechanism. When a coordinator compares responses from replicas and finds inconsistent data, it repairs divergent replicas while processing the read. section 8.4.2

A read repair proceeds according to the read response and requested consistency level:

  • The coordinator receives copies of the requested data from replicas and detects a mismatch. section 8.4.2
  • If the desired consistency level has not been satisfied, the coordinator repairs the replica synchronously. section 8.4.2
  • If the desired consistency level is already satisfied, the coordinator performs the repair in the background. section 8.4.2
  • With probabilistic read repair enabled, a request may query every replica, even when fewer replicas are needed for the requested consistency level. section 8.4.2

Repair during a read

A coordinator reads the same row from several replicas. If one response differs from the others, ScyllaDB uses the read to reconcile the mismatch: synchronously when the consistency requirement is not yet met, or in the background when it is already met. section 8.4.2

How ScyllaDB in Action covers it

How deep it goes
Explains coordinator detection, consistency-level-dependent timing, and probabilistic activation, but not repair implementation internals.
Examples
Uses mismatched replica responses and the read_repair_chance table option as concrete operational examples.
What it assumes
Assumes familiarity with replicas, coordinator nodes, reads, and consistency levels.
What you can do after
Diagnose how inconsistent replica responses trigger synchronous, background, or probabilistic read repair.
How it connects
Connects read repair with replicas, consistency levels, coordinator nodes, anti-entropy, repair, and hinted handoff.

Related concepts

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