liquibase - DatabaseChangeLog 不记录 exectype 不是“EXECUTED”的行
问题描述
我正在使用 Liquibase 3.8.0 运行迁移,我注意到 DatabaseChangelog 表中只有 exectype 为“EXECUTED”的行,这意味着迁移成功。
我运行了一些有错误的迁移,但它们没有出现在 DatabaseChangelog 表中。我希望有几行带有 exectype“FAILED”。我错过了一个属性吗?示例变更集:
<changeSet id="TestFailOnError" author="myName">
<sqlFile path="./TestFailOnError.sql" relativeToChangelogFile="true" />
</changeSet>
解决方案
变更集可能在 DATABASECHANGELOG 的 ExecType 列中具有值“FAILED”,但唯一发生的情况是变更集具有“failOnError”属性设置为 FALSE 的前提条件。
通常,当变更集失败时,只会停止 liquibase 执行,并且预计您将解决问题,然后重新运行更新命令以部署这些变更集。
推荐阅读
- sql-server - 如何在 SQL Server 中为可为空的列添加默认约束?
- java - 在 Handler Android Studio 之后停止的异步方法中的错误
- apache-nifi - 换档操作的颠簸规范
- docker - 使用 localhost 从一个容器向第二个容器发出请求
- python - 显式检查 SQL INSERT 操作是否成功是不必要的?
- http - JEE 容器管理身份验证中的日志记录失败
- c++ - Qt 子目录,其中一个项目生成另一个项目中使用的源/头文件
- javascript - 无法使用 addEventListener 将值传递给外部 JS 文件
- ios - 如何在 Apple Store 中添加顶部图像?
- sql-server - 从 SQL Server 到 Excel 的不同日期时间格式