# Isang one-millisecond na bug ang nagpatigil sa trapiko sa himpapawid ng UK. Anim na oras.

Published: 2026-09-25

Bandang 10:00 noong Martes, Setyembre 8, isang routine squawk-code request sa loob ng National Airspace System (NAS) ng NATS ay naantala ng isang mas mataas na priyoridad na mensahe habang ito ay bahagyang nag-a-update ng isang halaga. Ang exposure window ay humigit-kumulang isang millisecond. Ang kahilingan ay nagpatuloy nang mali, ang data ng flight ay lumabas na sira, at pagsapit ng 19:30, mahigit 2,000 flight sa UK ang naantala, nakansela, o nailihis.

Canonical: https://thedailydiff.dev/fil/video/2026-09-25-nats-millisecond/

## Ang sakop ng video na ito

- 10:00: isang kahilingan, naantala sa loob ng 1 ms window
- Timeline: 10:00 squawk → 10:02 blip → 12:45 paghinto ng paglipad → 13:32 nawalan ng link
- Ang lunas: i-restart ang data ng flight ng buong bansa
- Mekanismo: huminto sa kalagitnaan ng pagsulat
- Bakit pinatigil ng isang safety feature ang kalangitan

## Mga Kabanata

- 0:00 10:00: isang kahilingan, naantala sa loob ng 1 ms window
- 0:32 Timeline: 10:00 squawk → 10:02 blip → 12:45 paghinto ng paglipad → 13:32 nawalan ng link
- 1:03 Ang lunas: i-restart ang data ng flight ng buong bansa
- 1:22 Mekanismo: huminto sa kalagitnaan ng pagsulat
- 1:37 Bakit pinatigil ng isang safety feature ang kalangitan
- 2:05 git blame — legacy code 50 · restart plan 30 · ang 10:02 alarm 15 · 1 ms 5
- 2:24 Blast radius: 8,000 ang nakaplano, 6,094 ang nahawakan, pangatlong pagkabigo sa tatlong taon
- 2:41 Hatol + ang linya ng Lunes: atomic writes, malakas na alarma

## Isinaling transcript

Isinalin mula sa orihinal na salaysay sa English. Ang available na audio at mga caption ay kinokontrol ng YouTube.

### 10:00: isang kahilingan, naantala sa loob ng 1 ms window

0:00 Alas-diyes ng umaga, isang karaniwang kahilingan sa loob ng sistema ng datos ng flight ng Britain ay naantala sa eksaktong maling millisecond, at pagsapit ng gabi, mahigit dalawang libong flight ang naantala, nakansela, o nilihis. Iyan ay mula sa paunang ulat ng Nats, ang serbisyo ng trapiko sa himpapawid ng UK. Walang senyales ng pag-atake, at walang nagpindot ng maling button. Isang legacy defect lang, at isang napaka-specific na millisecond. Paano nangyari, bakit sapat ang isang millisecond, at sino talaga ang dapat sisihin. Ito ang The Daily Diff, postmortem.

0:31 Alas-diyes. May nagtanong mano-mano para sa squawk code, ang apat na digit na numero na

### Timeline: 10:00 squawk → 10:02 blip → 12:45 paghinto ng paglipad → 13:32 nawalan ng link

0:36 nag-uugnay ng radar blip sa plano ng flight nito. Ang kahilingan ay valid, at gayundin ang plano. Alas-diyes y dos. Ang koneksyon sa pagitan ng London Area Control at ng pangunahing sistema ay bumagsak, pagkatapos ay bumalik nang kusa pagkatapos ng apatnapu't limang segundo. Sinasabi sa tiket na naibalik, stable, walang operational impact. Alas-dose y trenta'y dos. Ang koneksyon ay nagsimulang bumagsak muli, mas mabilis bawat oras, at nawalan ng ilang automation ang mga controller.

0:56 Pagsapit ng alas-dose y kwarenta'y singko, huminto ang mga flight mula sa UK. Alas-uno y trenta'y dos, bumagsak ang koneksyon at nanatiling hindi gumagana. Ang lunas ay isang kontroladong restart, at iyon ang mahal na bahagi,

### Ang lunas: i-restart ang data ng flight ng buong bansa

1:06 dahil ang parehong sistema ang nagbibigay ng serbisyo sa mga control center at airport sa buong bansa. Ang bug ay nasa airspace ng London. Ang mga restriksyon ay sumasakop sa buong UK. Ang restart ay tumatakbo mula alas-tres y kwartos hanggang alas-kwatro y diez, at ang pag-aayos ng mga duplicate na flight plan ay tumatagal hanggang alas-siete menos diez. Kaya bakit sapat ang isang millisecond?

### Mekanismo: huminto sa kalagitnaan ng pagsulat

1:23 Pinamamahalaan ng sistema ang mga gawain ayon sa priyoridad, at ang pagpapahinto ng maliit na gawain para sa isang kagyat na gawain ay normal. Ngunit ang gawaing ito ay bahagyang nag-a-update ng isang halaga. Ang kagyat na mensahe ay dumating sa loob ng millisecond na iyon, at ang update ay huminto sa kalagitnaan. Kapag nagpatuloy ito, hindi ito nagpapatuloy nang tama. Ang masamang data ay pagkatapos ay kumalat sa ilan sa mga huling update ng flight.

### Bakit pinatigil ng isang safety feature ang kalangitan

1:40 Sinusubukan ng London na basahin ang isa, masyadong matagal at nag-timeout. Isang timeout ang nagputol ng koneksyon, tulad ng disenyo, upang protektahan ang parehong sistema. Ang safety feature ay gumagana nang perpekto. Iyan ang problema. Mga sariling salita ng ulat. Kung dumating ang kagyat na mensahe ng isang millisecond na mas maaga o mas huli, ang update ay nakumpleto sana nang normal. Sa Hacker News, tinawag ng isang programmer ang isang millisecond na absolute eternity,

2:02 garantisadong mangyari pagsapit ng Martes ngayong linggo. Isang Martes iyon.

### git blame — legacy code 50 · restart plan 30 · ang 10:02 alarm 15 · 1 ms 5

2:05 git blame. Ang legacy code, limampung porsyento, para sa isang update na maaaring i-pause sa kalagitnaan at bumalik nang mali. Ang restart plan, tatlumpu, dahil ang isang masamang tala sa London ay nangangahulugang pag-restart ng data ng flight ng buong bansa. Ang alas-diyes y dos na alarma, labinlima, para sa paggaling nito at pagiging nai-file bilang walang epekto. Limang porsyento sa millisecond, para sa timing nito. Blast radius. Nagplano ang Nats ng humigit-kumulang walong libong flight sa araw na iyon at nahawakan

### Blast radius: 8,000 ang nakaplano, 6,094 ang nahawakan, pangatlong pagkabigo sa tatlong taon

2:27 humigit-kumulang anim na libo. Huminto ang mga flight mula sa UK ng humigit-kumulang apat at kalahating oras, at ang backlog ay tumagal ng mahigit dalawang araw upang maalis. Ito ang pangatlong pagkabigo ng Britain sa trapiko sa himpapawid sa tatlong taon, at tinawag ng punong ehekutibo ang bug na ito na napakalinaw.

### Hatol + ang linya ng Lunes: atomic writes, malakas na alarma

2:41 Hatol, postmortem: NEEDS REVIEW. Mabilis at tiyak ang ulat, at ang pag-aayos ay nakasulat at nasa testing. Ngunit ang plano ay isang mas mabilis na restart, hindi isang mas maliit. Linyang Lunes: kung ang isang trabaho ay maaaring i-pause, gawing atomic ang pagsulat nito, at ituring ang alarm na nagpapagaling sa sarili bilang isang alarm. Ipadala sa akin ang insidente na hindi mo pa rin pinapayagang pag-usapan, sa mga komento, o sa thedailydiff.dev. At iyan ang diff para sa araw na ito.

3:02 Ako si Niko mula sa Axrisi. Merge responsibly.

## Mga Pinagmulan

- [NATS, Major Incident Preliminary Investigation Report, NAS incident 08 September 2026 (report date Sep 16)](https://www.nats.aero/wp-content/uploads/2026/09/NATS-Preliminary-Investigation-Report-into-NAS-Incident-on-08-Sept-2026-Issued-16-Sept-2026.pdf) — www.nats.aero
- [NATS press release, "NATS publishes preliminary report on technical incident of 8 September" (Sep 18, 2026)](https://www.nats.aero/news/nats-publishes-preliminary-report-on-technical-incident-of-8-september/) — www.nats.aero
- [NATS on X, 8 Sep](https://x.com/NATS/status/2097313182482084317) — x.com
- [BBC, "Flight chaos caused by 'millisecond' software defect, report says"](https://www.bbc.co.uk/news/articles/cw0kl1571lpmo) — www.bbc.co.uk
- [The Guardian (Sep 18, 2026)](https://www.theguardian.com/world/2026/sep/18/flight-chaos-affecting-hundreds-of-thousands-caused-in-millisecond-by-software-error-uk) — www.theguardian.com
- [Hacker News thread on the report](https://news.ycombinator.com/item?id=49754064) — news.ycombinator.com
