gpt4 book ai didi

kubernetes - 如何修复未清除的 Liquibase 数据库锁

转载 作者:行者123 更新时间:2023-12-02 11:52:09 25 4
gpt4 key购买 nike

我在项目中使用 liquibase,到目前为止它运行良好。
我添加了一个新的变更集,它在本地运行良好,一旦部署,容器的状态就会挂起,并显示以下语句:“liquibase:WAITING更改日志锁定...”

未设置部署的限制资源。
表“databasechangeloglock”的更新不起作用,导致 pod 一直锁定它。
我该如何解决这个问题?

最佳答案

参见 other question here .如果锁发生了,进程意外退出,那么锁会留在那里。

根据 this answer ,你可以直接运行SQL来解除锁定:

UPDATE DATABASECHANGELOGLOCK SET LOCKED=0, LOCKGRANTED=null, LOCKEDBY=null where ID=1;

Note: Depending on your DB engine, you may need to use FALSE or 'f' instead of 0 for the LOCKED value.

根据你的问题,你的进程本身正在创建一个新锁,但每次仍然失败,那么很可能是进程由于不同的原因退出/失败(或以错误的顺序检查锁。

另一种选择是考虑 Liquibase No ChangeLog Lock extension .

Note: This is probably a last resort. The extension could be an option if you were having more trouble with the changelog lock than getting any benefit (e.g. only running one instance of the app and don't really need locking). It is likely not the "best" solution, but is certainly an option depending on what you need. The README in the link says this too.

关于kubernetes - 如何修复未清除的 Liquibase 数据库锁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56086473/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com