+− THE DAILY DIFFdev & AI news
NEEDS REVIEW

Мільйонна частка секунди зупинила авіатрафік Великої Британії. Шість годин.

О 10:00 у вівторок, 8 вересня, один звичайний запит коду транспондера в Національній системі повітряного простору (NAS) NATS переривається повідомленням з вищим пріоритетом, доки він частково оновлює значення.

О 10:00 у вівторок, 8 вересня, один звичайний запит коду транспондера в Національній системі повітряного простору (NAS) NATS переривається повідомленням з вищим пріоритетом, доки він частково оновлює значення. Вікно впливу становить близько однієї мілісекунди. Запит поновлюється неправильно, дані про польоти виявляються пошкодженими, і до 19:30 понад 2000 рейсів у Великій Британії були затримані, скасовані або перенаправлені.

Читати письмову версію (англійською) ↗

Що охоплює це відео

  • 10:00: один запит, перерваний протягом 1 мс вікна
  • Хронологія: 10:00 squawk → 10:02 blip → 12:45 зупинка вильотів → 13:32 втрата зв'язку
  • Рішення: перезапустити дані про польоти всієї країни
  • Механізм: пауза на півдорозі запису
  • Чому функція безпеки зупинила небо

Перекладена стенограма

Перекладено з оригінальної англійської розповіді. Доступне аудіо та субтитри контролюються YouTube.

10:00: один запит, перерваний протягом 1 мс вікна

0:00 О десятій ранку, один звичайний запит у британській системі даних про польоти переривається точно в невідповідну мілісекунду, і до вечора понад дві тисячі рейсів затримуються, скасовуються або перенаправляються. Це з попереднього звіту Nats, служби повітряного руху Великої Британії. Жодних ознак нападу, і ніхто не натискав неправильну кнопку. Лише успадкований дефект і одна дуже специфічна мілісекунда. Як це сталося, чому однієї мілісекунди було достатньо, і хто насправді несе відповідальність. Це The Daily Diff, посмертний аналіз.

0:31 Десята година. Хтось вручну запитує код транспондера, чотиризначний номер, який

Хронологія: 10:00 squawk → 10:02 blip → 12:45 зупинка вильотів → 13:32 втрата зв'язку

0:36 пов'язує радіолокаційний імпульс з планом польоту. Запит дійсний, як і план. Десять нуль дві. Зв'язок між Лондонським районним управлінням і основною системою розривається, потім відновлюється сам по собі через сорок п'ять секунд. У квитку зазначено: відновлено, стабільно, без операційного впливу. Дванадцять тридцять дві. Зв'язок починає знову розриватися, кожного разу швидше, і диспетчери втрачають частину автоматизації.

0:56 До дванадцяти сорока п'яти вильоти з Великої Британії зупинені. О першій тридцять дві зв'язок розривається і залишається відсутнім. Вирішенням є контрольований перезапуск, і це дорога частина,

Рішення: перезапустити дані про польоти всієї країни

1:06 оскільки та ж система забезпечує дані для центрів управління та аеропортів по всій країні. Помилка знаходиться в повітряному просторі Лондона. Обмеження поширюються на всю Велику Британію. Перезапуск триває з чверті на четверту до десятої після четвертої, і розплутування дублікатів планів польотів займає до десятої до сьомої. Тож чому однієї мілісекунди було достатньо?

Механізм: пауза на півдорозі запису

1:23 Система жонглює завданнями за пріоритетом, і призупинення невеликого завдання для термінового є нормальним. Але це завдання було на півдорозі оновлення значення. Термінове повідомлення надходить протягом цієї мілісекунди, і оновлення зупиняється на півдорозі. Коли воно відновлюється, воно відновлюється неправильно. Потім неправильні дані потрапляють до деяких пізніших оновлень польотів.

Чому функція безпеки зупинила небо

1:40 Лондон намагається прочитати одне, займає занадто багато часу і виходить за ліміт. Таймаут розриває зв'язок, як і задумано, щоб захистити обидві системи. Функція безпеки працює ідеально. В цьому і проблема. Власні слова звіту. Якби термінове повідомлення надійшло на одну мілісекунду раніше або пізніше, оновлення завершилося б нормально. На Hacker News один програміст називає мілісекунду абсолютною вічністю,

2:02 гарантовано трапиться до вівторка цього тижня. Це був вівторок.

git blame — успадкований код 50 · план перезапуску 30 · тривога 10:02 15 · 1 мс 5

2:05 git blame. Застарілий код, п'ятдесят відсотків, за оновлення, яке можна призупинити на півдорозі і воно повертається неправильним. План перезапуску, тридцять, тому що один поганий запис у Лондоні означає перезапуск даних про польоти всієї країни. Тривога десять нуль дві, п'ятнадцять, за те, що вона сама себе відновила і була зареєстрована як без впливу. П'ять відсотків до мілісекунди, за її час. Радіус ураження. Nats запланувала близько восьми тисяч рейсів того дня і обробила

Радіус ураження: 8 000 запланованих, 6 094 оброблених, третя відмова за три роки

2:27 близько шести тисяч. Вильоти з Великої Британії були зупинені близько чотирьох з половиною годин, і усунення затримки зайняло понад два дні. Це третя відмова повітряного руху Великої Британії за три роки, і головний виконавчий директор називає цю помилку дуже, дуже неясною.

Вердикт + понеділкова лінія: атомарні записи, гучні тривоги

2:41 Вердикт, посмертний аналіз: NEEDS REVIEW. Звіт швидкий і конкретний, а виправлення написане і тестується. Але план полягає в швидшому перезапуску, а не в меншому. Понеділкова лінія: якщо завдання можна призупинити, зробіть його запис атомарним, і розглядайте тривогу, яка сама себе відновлює, як тривогу. Надішліть мені інцидент, про який вам ще не дозволено говорити, у коментарях або на thedailydiff.dev. І це The Daily Diff за сьогодні.

3:02 Я Ніко з Axrisi. Об'єднуйте відповідально.

Джерела

  1. NATS, Major Incident Preliminary Investigation Report, NAS incident 08 September 2026 (report date Sep 16)www.nats.aero
  2. NATS press release, "NATS publishes preliminary report on technical incident of 8 September" (Sep 18, 2026)www.nats.aero
  3. NATS on X, 8 Sepx.com
  4. BBC, "Flight chaos caused by 'millisecond' software defect, report says"www.bbc.co.uk
  5. The Guardian (Sep 18, 2026)www.theguardian.com
  6. Hacker News thread on the reportnews.ycombinator.com

Пов'язані відео

postmortem · uk · 22 вер. 2026 р.

Перезавантаження відкинуло Telstra у 2006 рік. Дев'ять мільйонів телефонів.

Інженер у Мельбурні о 2:50 ночі знову вмикає шасі синхронізації, і до сніданку найбільша мобільна мережа Австралії погоджується, що зараз листопад 2006 року. 8 липня 2026 року: GPS-карта в шасі NTP Te

3:15 ↗