手动将 flyway 迁移标记为已完成
Manually marking flyway migration as completed
几天前我们犯了一个错误。我们有一个 kubernetes 集群,其管道会在 25 分钟内超时,这意味着如果部署没有在 25 分钟内完成,它将失败。我们部署了一个 flyway 迁移,其中涉及一些 运行 一个多小时的查询。愚蠢,我知道。现在我们 运行 手动迁移中的查询,我们希望手动将 flyway 迁移标记为已完成,否则重新部署将无法进行。有办法做到这一点吗?
所以我们最终在数据库中手动插入了一个迁移行。 flyway 在您的架构中保留 table flyway_schema_history。如果您在那里手动插入一行,它将跳过迁移。唯一棘手的部分是计算校验和。您可以在本地迁移,获取校验和并将其注入实时数据库,或者自己重新计算校验和。
您将在 AbstractLoadableResource 中找到他们如何计算校验和的方法 class。
几天前我们犯了一个错误。我们有一个 kubernetes 集群,其管道会在 25 分钟内超时,这意味着如果部署没有在 25 分钟内完成,它将失败。我们部署了一个 flyway 迁移,其中涉及一些 运行 一个多小时的查询。愚蠢,我知道。现在我们 运行 手动迁移中的查询,我们希望手动将 flyway 迁移标记为已完成,否则重新部署将无法进行。有办法做到这一点吗?
所以我们最终在数据库中手动插入了一个迁移行。 flyway 在您的架构中保留 table flyway_schema_history。如果您在那里手动插入一行,它将跳过迁移。唯一棘手的部分是计算校验和。您可以在本地迁移,获取校验和并将其注入实时数据库,或者自己重新计算校验和。
您将在 AbstractLoadableResource 中找到他们如何计算校验和的方法 class。