ufm: (Default)
[personal profile] ufm
OpenNetOpenNet была создана публикация Wed, 19 Nov 2025 06:48:01 +0200
Многочасовой сбой Cloudflare оказался результатом некорректной обработки ошибок

Компания Cloudflare опубликовала разбор одного из крупнейших инцидентов в своей инфраструктуре, из-за которого вчера большая часть сети доставки контента оказалась неработоспособной на протяжении более 3 часов. Сбой произошёл после изменения в структуре БД, размещённой в хранилище ClickHouse, после которого файл с параметрами для системы противодействия ботам в два раза увеличился в размере. В БД были образованы дублирующиеся таблицы, при том, что SQL-запрос для формирования файла просто выводил все данные из всех таблиц по ключу, без отсеивания дубликатов.

https://www.opennet.ru/opennews/art.shtml?num=64282


Источник:https://twinkle.lol/item/02d85792-9ddb-48b7-b6fa-a3a20a068a7a

(no subject)

Date: 2025-11-19 08:25 (UTC)
tiresome_cat: (CuriousCat)
From: [personal profile] tiresome_cat
Они что, не тестируют вносимьіх изменений? Прям так в рабочий агрегат все и суют?

(no subject)

Date: 2025-11-19 10:10 (UTC)
tiresome_cat: (SmilingCat_2)
From: [personal profile] tiresome_cat
Растаманьі.

(no subject)

Date: 2025-11-19 10:25 (UTC)
juan_gandhi: (Default)
From: [personal profile] juan_gandhi
Ошибки корректно обрабатывать менеджеры и не позволяют. Некогда! Надо релизить скорее!
И вот в этом случае кто будет виноват? Не менеджеры же. Виноваты будут джуны. А они выполняли приказ.

(no subject)

Date: 2025-11-19 10:54 (UTC)
From: [personal profile] borisk
Если верить оригиналу, там было смешнее. Они читали данные из распределенной базы ClickHouse.

А потом они решили соптимизировать процесс и дать скрипту право читать нижележащие базы, не нагружая Distributed table engine. Но при этом они оставили скрипту право на работу через Distributed.

Как только они дали скрипту право на чтение прочих таблиц - оно и бомбануло. Потому что они читали в объект фиксированного размера и не обрабатывали многократные последовательные ошибки чтения.

Я бы ввёл в обработку ошибок экспоненциальную задержку, если ошибка случается много раз подряд. Ну и откат на последнюю правильную конфигурацию.

(no subject)

Date: 2025-11-20 07:48 (UTC)
tobotras: (Default)
From: [personal profile] tobotras
"Некорректной обработки ошибок", конечно, -- глупое упрощение. Почитай первоисточник.

А также обязательно см. https://how.complexsystems.fail/#3
Edited Date: 2025-11-20 07:49 (UTC)