On 14 March our tracking page
was down for 23 minutes.
Title card over the tracking page, greyed out.
Audience: support and product colleagues
On 14 March our tracking page
was down for 23 minutes.
Title card over the tracking page, greyed out.
And it started with one slow query.
It took 8 seconds, not 200 milliseconds.
One query on a stopwatch, running long.
Our app gives up after 2 seconds,
then tries again, up to 3 times.
Four steps in a row: ask, wait, give up, ask again.
So one slow request becomes 4 requests.
One dot splits into four.
Normal load is 900 a second.
At the peak it hit 3,600.
Two bars, normal and peak.
The database never catches up,
because retries land faster than it can finish.
A queue that fills faster than it drains.
That is a retry storm.
The trying again is what keeps it down.
The words alone, large.
The fix went out on 16 March.
Each retry now waits longer than the last,
plus a random extra wait.
Dots spread apart along a line.
And retries are capped
at 10% of normal traffic.
A thin slice of a full bar, marked as the cap.
We ran a drill on 21 March.
Same slow query:
40 seconds of slow pages, and no outage.
Before and after: 23 minutes down, 40 seconds slow.
So if a customer says it's slow,
tell them it's slow.
Slow is the safe way to fail now.
The sentence on its own.
Ticks stay on this page, in this browser. A tick is the person's word, not proof.
| Printed | Source says | Person checked | |
|---|---|---|---|
| Title | What a retry storm is | Own words, no source | |
| Audience | support and product colleagues | Own words, no source | |
| Label | Fictional example | Own words, no source | |
| Limit | 60 s | 60 seconds, for the Thursday all-hands | |
| Beat 1 | On 14 March our tracking page was down for 23 minutes. Words: 23 minutes down On screen: Title card over the tracking page, greyed out. | On 14 March the parcel tracking page was down for 23 minutes. | |
| Beat 2 | And it started with one slow query. It took 8 seconds, not 200 milliseconds. Words: 8 seconds, not 200 ms On screen: One query on a stopwatch, running long. | It started with one slow database query, which took 8 seconds instead of 200 milliseconds. | |
| Beat 3 | Our app gives up after 2 seconds, then tries again, up to 3 times. Words: Give up. Try again. On screen: Four steps in a row: ask, wait, give up, ask again. | The tracking app gives up after 2 seconds and tries again, up to 3 times. | |
| Beat 4 | So one slow request becomes 4 requests. Words: 1 slow request becomes 4 On screen: One dot splits into four. | It started with one slow database query tries again, up to 3 times. | |
| Beat 5 | Normal load is 900 a second. At the peak it hit 3,600. Words: 900 to 3,600 a second On screen: Two bars, normal and peak. | Normal load is 900 requests a second. At the peak it was 3,600 requests a second. | |
| Beat 6 | The database never catches up, because retries land faster than it can finish. Words: It never catches up On screen: A queue that fills faster than it drains. | The database stayed overloaded because retries arrived faster than it could finish them. | |
| Beat 7 | That is a retry storm. The trying again is what keeps it down. Words: That is a retry storm On screen: The words alone, large. | This is called a retry storm. | |
| Beat 8 | The fix went out on 16 March. Each retry now waits longer than the last, plus a random extra wait. Words: Wait longer. Wait unevenly. On screen: Dots spread apart along a line. | The fix shipped on 16 March: each retry now waits longer than the last, plus a random extra wait. | |
| Beat 9 | And retries are capped at 10% of normal traffic. Words: Capped at 10% On screen: A thin slice of a full bar, marked as the cap. | Retries are now capped at 10% of normal traffic. | |
| Beat 10 | We ran a drill on 21 March. Same slow query: 40 seconds of slow pages, and no outage. Words: 40 seconds slow, no outage On screen: Before and after: 23 minutes down, 40 seconds slow. | was down for 23 minutes. In a drill on 21 March the same slow query caused 40 seconds of slow pages and no outage. | |
| Beat 11 | So if a customer says it's slow, tell them it's slow. Slow is the safe way to fail now. Words: Slow is the safe way to fail On screen: The sentence on its own. | Own words, no source A closing thought for the audience, drawn from the drill. States no new fact. | |
| Worked out | 4 | 1+3 |
The source column and the text below are the writer's copy of the material. Nothing proves the copy matches what you gave. Compare them.
Fictional example. Tollgate Freight is an invented company. Facts checked by the on-call team: On 14 March the parcel tracking page was down for 23 minutes. It started with one slow database query, which took 8 seconds instead of 200 milliseconds. The tracking app gives up after 2 seconds and tries again, up to 3 times. Normal load is 900 requests a second. At the peak it was 3,600 requests a second. The database stayed overloaded because retries arrived faster than it could finish them. This is called a retry storm. The fix shipped on 16 March: each retry now waits longer than the last, plus a random extra wait. Retries are now capped at 10% of normal traffic. In a drill on 21 March the same slow query caused 40 seconds of slow pages and no outage. UNSUPPORTED: the most common cause of outages UNSUPPORTED: 50,000 pounds
Looked at by machine, against the material: digits and written number words; time and percent units only; every-style frequencies only; from-to order; capitalised names; exact quotations; listed phrases only; left-out claims by key words. Not looked at: whether a sentence means what its source means, which number plays which role, negation, reworded claims, and names without a capital. No script can check meaning, so a person has to read the table.