Flyway 3.0到4.0升级失败(至少对于Postgres而言)

时间:2016-03-16 16:05:17

标签: database-migration flyway

我们尝试直接从Flyway 3.0转到4.0以获得可重复迁移的访问权限。 (因此跳过版本3.1和3.2。)

通过#include <stdio.h> int main(){ char char_ar[] = "hello world."; char* char_ptr = char_ar; /*Same thing*/ printf("*Same thing:\n"); printf("%x : %c\n", &*char_ptr, *char_ptr); printf("%x : %c\n", &*char_ar, *char_ar); /*Not same thing*/ printf("*Not the same thing:\n"); printf("%x : %c\n", char_ptr, *char_ptr); printf("%x : %c\n", &char_ar, *(&char_ar)); getchar(); } 运行的SQL会删除版本3.0模式中不存在的索引MetaDataTableImpl.upgradeIfNecessaryschema_version_vr_idx,因此Postgres不满意。

支持多个版本升级的方法可能是使用schema_version_ir_idx,但当然需要采用不同的数据库。

目前我通过在运行Flyway升级架构之前创建这两个索引来解决问题。

有更好的方法吗?

1 个答案:

答案 0 :(得分:2)