Пару дней назад мы ошиблись. У нас есть кластер Kubernetes с конвейером, время ожидания которого истекает через 25 минут, то есть, если развертывание не было выполнено за 25 минут, оно завершится ошибкой. Мы развернули миграцию пролетного пути, которая включает некоторые запросы, которые выполняются более часа. Я знаю, глупо. Теперь мы запускали запросы в миграции вручную. Мы хотим вручную отметить миграцию пролетного пути как выполненную, иначе повторное развертывание не сработает. Есть ли способ сделать это?





Итак, мы закончили тем, что вручную вставили строку миграции в базу данных. flyway хранит таблицу flyway_schema_history в вашей схеме. Если вы вручную вставите туда строку, перенос будет пропущен. Единственная сложная часть - это вычисление контрольной суммы. Вы можете выполнить локальную миграцию, получить контрольную сумму и внедрить ее в действующую базу данных или просто пересчитать контрольную сумму самостоятельно.
Вы узнаете, как они вычисляют контрольную сумму, в классе AbstractLoadableResource.
@DavidDombrowsky На самом деле я обнаружил, что они добавили возможность пропустить выполнение (flywaydb.org/blog/skipexecutingmigrations). Однако эта опция была добавлена после того, как вопрос был задан.
Мне трудно поверить, что нет официального способа сделать это.