Текст песни
— Правка большая
— Одно поле
— Прогноз
— Пять минут
— Кто читает поле
ВСЕ
В задаче: «Новый флаг. Пустяк
Добавить в выдачу. И всё»
Но АПИ спросил: «А как
Старый клиент ещё не ушёл»
Один уже сменил формат
Второй хранит былой ответ
А внешний держит свой контракт
«Попозже обновим. Сроков нет»
Миграция сказала: «Стоп
Сперва nullable — потом
Бэкфилл погонем по частям
Чтоб база не легла к чертям»
Пять минут! Пять минут!
Так написано в задаче
Пять минут! Пять минут!
Но система смотрит иначе
API! Пересчёт!
Старый клиент ещё живёт
Dual-write! Нулевой простой!
— Сколько минут
— ПЯТЬ. РАБОЧИХ. ДНЕЙ
Сначала Экспанд: новый вход
А прежний трогать не спешим
Две сборки вместе держат ход
Одна лишь схема служит им
В два поля пишут dual-write
Бэкфилл историю метёт
По batch'ам, тихо, byte за byte
Пока обычный трафик прёт
Когда последний наш запрос
Пройдёт по старому пути
Настанет время: код — на снос
Ему пора уже уйти
Пять минут! Пять минут!
Так написано в задаче
Пять минут! Пять минут!
Но система смотрит иначе
API! Пересчёт!
Старый клиент ещё живёт
Dual-write! Нулевой простой!
— Сколько минут
— ПЯТЬ. РАБОЧИХ. ДНЕЙ
— Минута первая
— Миграция
— Вторая
— API
— Третья
— Пересчёт
— Четвёртая
— Совместимость
— Пятая
— Деплой без остановки
— Готово
— Да
— Что
— План
Пять минут! Пять минут!
Так написано в задаче
Пять минут! Пять минут!
Мы прочли теперь иначе
Бэкфилл! Contract!
Старый маршрут покидает проект
Релиз! Без простоя! Домой!
— Сколько минут
— Тикет закрой
— Так где были те пять минут
— В описании
Его писали пять минут