Snowflake cloud data platform Liquibase卡在计算校验和上

Snowflake cloud data platform Liquibase卡在计算校验和上,snowflake-cloud-data-platform,liquibase,Snowflake Cloud Data Platform,Liquibase,在Snowflake数据库上使用Java/Spring运行Liquibase。第一个部署工作正常,我让Liquibase创建DatabaseChangeLogTable和DatabaseChangeLogLockTable。它们被创建、写入并创建数据库对象 我第二次尝试运行它时,它将获取更改日志锁,但随后会在liquibase.util:Computed checksum for xxxx上停留很长时间。然后在5分钟后超时(由于其他配置设置)。如果我删除DatabaseChangeLogTabl

在Snowflake数据库上使用Java/Spring运行Liquibase。第一个部署工作正常,我让Liquibase创建DatabaseChangeLogTable和DatabaseChangeLogLockTable。它们被创建、写入并创建数据库对象


我第二次尝试运行它时,它将获取更改日志锁,但随后会在liquibase.util:Computed checksum for xxxx上停留很长时间。然后在5分钟后超时(由于其他配置设置)。如果我删除DatabaseChangeLogTable和DatabaseChangeLogLockTable(以交互方式),并将锁状态更新为false,它将再次正常工作。当DatabaseChangeLogTable和DatabaseChangeLogLockTable已经存在时,有没有关于为什么它似乎无法完成的想法?当我使用Liquibase使用的相同凭据登录数据库时,我可以选择并更新这些表。

您可以尝试使用clearChecksums吗?
clearCheckSums清除所有校验和并使DATABASECHANGELOG表的MD5SUM列为空,以便在下次数据库更新时重新计算这些校验和。已部署的变更集将重新计算其校验和,并将部署挂起的变更集。有关此方法的更多详细信息,请访问

谢谢。在第一次运行时,我可以尝试在最后一个脚本中将校验和列更新为null,但在此环境中,我无权访问命令行liquibase命令。不管怎样,删除changelog表可以有效地清除校验和,我不确定这是否有帮助,但我会尝试一下。您也可以通过java代码清除校验和,您不一定需要通过CLI执行它。关于删除changelog表,这不是一个好的做法。相反,最好清除校验和列。当然,请尝试一下,如果您遇到任何问题,请告诉我们。