liveBook · Manning

Intermittent failure

As explained in Think Distributed Systems

A failure whose subsequent occurrence probability is elevated and that can resolve automatically after a delay.

An intermittent failure is a failure that lingers: after one occurrence, the probability of another is elevated. It still resolves automatically, usually after a delay. section 3.3.3

The classification depends on two observable properties:

  • Conditional likelihood: the probability of failure F2 after failure F1 is higher than the probability of F2 occurring independently. section 3.3.3
  • Resolution: the failure autorepairs without intervention, but recovery may require time for the underlying condition to change. section 3.3.3
  • A failed connection caused by an outdated routing table is intermittent: connection attempts may continue failing until the router updates its table. section 3.3.3
  • An extended employee absence provides a distributed-systems analogy: the component is unavailable for a while, then returns without permanent loss. section 1.6
Figure 3.13 Intermittent failure
A black text and a line

AI-generated content may be incorrect.

Use the temporal classification diagram to contrast intermittent failures with transient and permanent failures. section 3.3.3

How Think Distributed Systems covers it

How deep it goes
Defines elevated conditional probability and automatic repair, then illustrates delayed recovery without developing mitigation procedures.
Examples
Uses an outdated routing table, failed CouldNotConnect attempts, and an employee taking an extended vacation.
What it assumes
Assumes a basic understanding of failures and introduces their temporal classification through conditional probabilities and analogies.
What you can do after
Evaluate whether repeated failures are likely to persist temporarily and distinguish them from isolated or permanent failures.
How it connects
Connects intermittent failure to transient failures, permanent failures, crash semantics, and message-delivery concerns.

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.