‹

05. Timeouts and Retries — The Cure That Causes the Disease

EN

05. Timeouts and Retries — The Cure That Causes the Disease

The Paradox of Recovery Logic

Retry mechanisms are intended to improve reliability by masking transient faults within a distributed system, yet they frequently serve as the primary catalyst for total collapse. In the 2015 DynamoDB US-East disruption, Amazon Web Services documented how automated retry logic inadvertently transformed a localized issue into a sustained, system-wide service failure. When individual storage servers began retrying membership requests against an overloaded metadata service, they created a positive-feedback loop that overwhelmed the already struggling infrastructure components. This specific event showed that the retry logic itself was the mechanism keeping the system in a degraded state, rather than a bridge to recovery. By maintaining a ~55% error rate for customers, the system demonstrated that blindly reapplying requests can exacerbate rather than resolve the underlying resource exhaustion.

Metastable Failures and Load Shedding

A metastable failure occurs when a system remains stuck in a high-latency or high-error state long after the initial triggering condition has been removed. Nathan Bronson, Abutalib Aghayev, Aleksey Charapko, and Timothy Zhu argued in their 2021 HotOS paper that these retry-driven loops are a defining characteristic of modern distributed systems. The 2015 AWS DynamoDB postmortem provides the definitive case study, illustrating how the metadata service could only recover once the team manually paused all incoming requests. This act of load shedding—deliberately rejecting work to protect the service—proved far more effective than the automated retries that had previously sustained the outage. To prevent the thundering-herd variant of this problem, engineers often implement exponential backoff with full jitter, calculating delay as random(0,1) multiplied by the min(cap, base x 2^attempt). Marc Brooker, writing for the AWS Architecture Blog in 2015, established this formula as the standard industry mitigation for preventing clients from synchronizing their retry attempts.

The Consensus on Retry Risks

There is no serious dispute regarding the danger of unconstrained retry loops, as the evidence from both academic research and operational postmortems aligns perfectly. Bronson et al. cite multiple industry incidents that mirror the DynamoDB failure, confirming that the pattern of retry amplification is a systemic, repeatable phenomenon. The field currently accepts that safety is a control problem requiring explicit load management rather than a simple component problem solvable by retrying.

Example: Retrying a failed request in an overloaded system is like pouring more water into a clogged drain, hoping the pressure will clear the pipe.

Verdict. Aggressive retry logic is a leading cause of large-scale, self-sustaining outages and should be replaced by load shedding during periods of high contention.

Overturned if: A large-scale system demonstrates that unconstrained retries under extreme load consistently lead to faster recovery times than load shedding or backoff strategies.

Sources. 2021 · Nathan Bronson, Abutalib Aghayev, Aleksey Charapko, Timothy Zhu, "Metastable Failures in Distributed Systems" — paper PDF · 2015 · Amazon Web Services, "Summary of the Amazon DynamoDB Service Disruption and Related Impacts in the US-East Region" — AWS postmortem

บทถัดไป · 6 / 1206. The Silent Success — Failure That Reports Everything Is Fine
Size
Page
Font

At The Seams

❦
101. The Seam — Why Failure Concentrates Where Parts Meet202. Units and Assumptions — The Mismatch Nobody Owns303. The Handoff — Where Information Goes to Die404. Protocol Drift — When Two Sides Disagree About the Contract505. Timeouts and Retries — The Cure That Causes the Disease606. The Silent Success — Failure That Reports Everything Is Fine707. Latent Conditions — Accidents That Were Already There808. The Blame Reflex — Why 'Human Error' Ends the Inquiry909. The Postmortem — Turning an Outage Into an Asset1010. Resilience Engineering — Work as Imagined and Work as Done1111. Control, Not Components — Leveson's Reframing1212. Finding Your Own Seams — The Procedure