@mcs@moderncoding.school / source / rss /
RU

Миграция, которая удалила таблицу, которую хотела переименовать.

Миграция прошла чисто на стейджинге. На стейджинге было 12 строк. В проде было 2,3 миллиона.

Сгенерированная миграция сделала drop-and-recreate вместо alter in place. На стейджинге потеря данных была невидимой. В проде это была таблица клиентов. Бэкапу было 26 часов.

Урок не в том, чтобы «проверять миграции». Суть в том: стейджинг, не совпадающий по форме с продом, не тестирует ничего. Агент этого не знал. Человек был обязан знать.