liveBook · Manning

Permanent failure

As explained in Distributed Machine Learning Patterns

A permanent failure is a failure condition expected to persist such that retrying is ineffective.

A permanent failure is a workflow failure expected to persist, making immediate retries ineffective. Diagnose its root cause before deciding whether to retry or run another task. section 6.3.2

Handle a permanent failure by checking the failed step’s dependencies and available resources:

  • Verify that required outputs still exist; if training data held only in memory was lost, restart data ingestion before training. section 6.3.2
  • Confirm sufficient computational capacity when preempted workers or out-of-memory conditions caused the failure. section 6.3.2
  • Record runtime metadata such as data availability, memory usage, and CPU usage to support root-cause analysis. section 6.3.2
Figure 6.14 The difference in the effectiveness of retrying for permanent and temporary failures
06-14

Compare why retries help temporary failures but repeatedly fail under permanent conditions. section 6.3.2

Figure 6.15 The process of restarting the data ingestion step when a permanent failure occurs during model training
06-15

Trace the recovery workflow that restarts data ingestion after model training loses its required input. section 6.3.2

How Distributed Machine Learning Patterns covers it

How deep it goes
Explains root-cause checks, dependency recovery, resource verification, and runtime metadata, but does not specify a framework implementation.
Examples
Uses lost in-memory data, preempted workers, out-of-memory errors, and memory-usage spikes during model training.
What it assumes
Assumes familiarity with machine-learning workflow steps, dependencies, data ingestion, model training, and computational resources.
What you can do after
Diagnose/debug with it by distinguishing ineffective retries from recoverable failures and restarting prerequisite workflow steps when necessary.
How it connects
Connects retry behavior with root-cause analysis, data ingestion, model training, computational resources, and runtime metadata.

Also explained in

Compare how 2 books explain permanent failure →

Related concepts

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