Найти в Дзене
Поддержите автораПеревод на любую сумму
Покупайте СтеллыИ дарите их за контент
2 дня назад

Первый день на работе: система на 500 тысяч строк и ни строчки документации

В 2017 году инженер GitLab выполнял ночную задачу по обслуживанию базы данных. Нужно было очистить директорию на вторичном сервере - там, где хранилась реплика. Он открыл консоль и выполнил команду. Выполнил не на том сервере. Через несколько секунд он понял, что очистил директорию на основном сервере. Около 300 гигабайт реальных данных - проекты, комментарии, пользователи - исчезли. Восстановление заняло 18 часов. Часть данных вернуть не удалось. Этот случай разбирают до сих пор. Но интересен он не тем, что инженер ошибся...

3 дня назад

Он забыл одну строчку в документе - и банк списал деньги дважды у 40 тысяч клиентов

В феврале 2026 года бельгийский банк BNP Paribas Fortis перезапускал обработку, которая была прервана. Технический сбой привёл к тому, что платежи за 1, 2 и 3 февраля были проведены повторно. Около 40 000 транзакций оказались затронуты: покупки в магазинах, снятия наличных, регулярные списания. У некоторых клиентов деньги ушли дважды, а то и больше. Банк принёс извинения и пообещал всё исправить автоматически, без заявлений от клиентов. В октябре 2024 года похожая история случилась в России. Клиенты разных банков столкнулись с двойными списаниями при оплате через терминалы Сбера...

4 дня назад

Одна база данных не может делать всё

В июле 2019 года Cloudflare - компания, через которую проходит трафик значительной части интернета - задеплоила обновление правила безопасности. Обычное обновление, каких сотни. Внутри правила было регулярное выражение - формула для проверки строк. Формула оказалась тяжёлой. Не ошибочной - синтаксически она была корректна. Но при определённых входных данных она заставляла процессор перебирать варианты, количество которых росло экспоненциально. Это называется катастрофическим бэктрекингом. Процессоры на серверах Cloudflare загрузились на сто процентов...

5 дней назад

"И", "или" и "ровно одно": как три слова ломают интеграцию с банком

В ноябре 2023 года на Хабре вышел разбор инструмента для генерации кода из OpenAPI-спецификаций. Автор отметил вещь, которая многое объясняет: генерация кода для oneOf без дискриминатора превращается в интерфейс с методами AsClient() и AsIdentity(), и разработчику приходится вручную выбирать, какой вариант использовать. С дискриминатором - в нормальные типы с аннотациями, которые сами знают, какой перед ними вариант. Это не академическая деталь. Это разница между спецификацией, которая работает, и спецификацией, которая ломается при первой же интеграции...

2 недели назад

Почему ваши схемы никто не понимает

В 2017 году инженер GitLab выполнял ночную задачу по обслуживанию базы данных. Нужно было очистить директорию на вторичном сервере - там, где хранилась реплика, а не оригинал. Он открыл консоль и выполнил команду. Выполнил не на том сервере. Через несколько секунд он понял, что очистил директорию на основном сервере. Около 300 гигабайт реальных данных - проекты, комментарии, пользователи - исчезли. Восстановление заняло 18 часов. Часть данных вернуть не удалось. Этот случай до сих пор разбирают на конференциях...

Поддержите автораПеревод на любую сумму
Покупайте СтеллыИ дарите их
за контент