Flyway,Postgresql,无法获取Flyway咨询锁

Sté*_*ane 10 postgresql locking flyway

我们有一个事务使用 Flyway (v6) 更新 postgresql 10 数据库中的 2000000 行。它失败并显示 Unable to acquire Flyway Advisory lock 。

2000000 条记录并不算大,只是 1 个逻辑事务。

我只能重现该问题一次,此后我无法重现该问题。这是一项微服务,目标表单独存在于其架构中。

有什么线索吗?

Yas*_*r G 2

如果此flyway运行在kubernetes pod中,第一次创建pod时,kubernetes验证pod时可能会花费很长时间并导致超时;下一个 pod 创建尝试可能会遇到此异常,而另一方面,第一个 pod 已经尝试通过咨询锁完成飞行路线。

在这种情况下,等待适当的时间后,它应该会恢复正常,因为至少其中一个 Pod 会将 Flyway 脚本应用到数据库(假设您的 Flyway 脚本没有问题)。