看起来当运行迁移失败时,迁移不会添加到schema.version
表,而是在pending
命令中本地反映为info
状态。
鉴于此,repair
不是必需的,因为schema.version
中没有存储校验和。
所以我想我的问题是;是否存在PostgreSQL需要修复的情况,以及什么情况会使schema_version
的行变为success
的非真值?
答案 0 :(得分:2)
你是对的。对于PostgreSQL和其他具有DDL事务支持的数据库,success
始终为true
。
唯一需要修复的时间是,由于某种原因,您必须更改迁移并且需要重新校准校验和。