【发布时间】:2021-04-26 22:24:06
【问题描述】:
我刚刚将我的 Spring Boot 应用程序从 2.3.5.RELEASE 升级到了 2.4.2。现在,当我尝试在现有数据库上启动我的应用程序时,Flyway 迁移失败并显示 Validate failed: Migrations have failed validation。没有详细信息或其他消息,只有这一条。通常 Flyway 会通知我校验和不匹配或其他问题,但在这种情况下什么都没有。
我是否错过了一些向后不兼容的更改,无论是在 Spring(Boot)还是在 Flyway 中?如何修复我的迁移?
【问题讨论】:
-
您是否在 Spring Boot 2.3 中使用了默认版本的 Flyway (6.4)? Spring Boot 2.4 已升级到 Flyway 7.1,因此如果您之前覆盖 Flyway 版本并使用 5.x,则可能需要先使用 Spring Boot 2.3 升级到 Flyway 6.x,然后再升级到 Spring Boot 2.4 和 Flyway 7。在release notes for 2.4.
-
@AndyWilkinson 我回去仔细检查。是的,我在升级之前使用的是 Flyway 6.4.4。无论如何感谢您的建议!
-
看起来新版本的 Flyway 不再报告“验证失败:迁移验证失败”之外的问题。虽然这并不能帮助我弄清楚升级后失败的原因,但它至少解释了无用的消息。
标签: java spring spring-boot flyway