2017-02-10 20 views
0

Я новичок в пролете, поэтому, возможно, я просто не понимаю, как работает validate(). Я создаю базовую базу данных, создал Миграцию файл V1_2_3__do_something.sql побежалпролетная валидация и будущие миграции

flyway validate 

и я получаю

ERROR: Validate failed: Detected resolved migration not applied to database: 1.2.3

Я использую версию 4.1.0, и тестирование и без параметра -ignoreFutureMigrations=true, но все тот же результат.

Кроме того, если я запустил flyway migrate, то миграция завершается без проблем.

Любая идея о том, что происходит? После первой миграции, если я создам миграцию V2__xxx, запустите проверку еще раз, и по той же причине он не сработает на V2.

Благодаря

ответ

1

Validate терпит неудачу в этом случае, поскольку есть отложенные миграции. Чтобы он прошел, добавьте -target=current, как описано здесь: https://flywaydb.org/documentation/commandline/validate#target

+0

Спасибо. Это сработало. Если я смогу сделать предложение (и получить кипячение крови монитора SO), опция 'ignorePendingMigrations' будет приятной. Это будет эквивалентно «target = current», но проще для новых пользователей. – Alain