Сначала определите, миграция ждёт lock или реально выполняет тяжёлую работу, и кто удерживает ресурс. Не запускайте её повторно и не убивайте процессы вслепую.
Что делать, если миграция в БД зависла на продакшене?
Сначала определите, миграция ждёт lock или реально выполняет тяжёлую работу, и кто удерживает ресурс. Не запускайте её повторно и не убивайте процессы вслепую.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Сначала определите, миграция ждёт lock или реально выполняет тяжёлую работу, и кто удерживает ресурс. Не запускайте её повторно и не убивайте процессы вслепую.
Проверьте активные транзакции, wait events, блокирующие PID, длительность и влияние на сервис. Согласуйте безопасную отмену именно проблемной операции и оцените rollback; DDL не во всех СУБД полностью транзакционен. После этого проверьте фактическую схему и журнал миграций. Для повторного запуска нужны лимиты ожидания и план уменьшения блокировок.