我正在使用 Spring boot 3.2 和 Flyway 9.22.3
现在我面临一个问题,当启动服务并执行flyway脚本时,它将始终挂在我同时创建索引的脚本上。
根据此处的问题,这似乎是飞行路线的已知问题: https://github.com/flyway/flyway/issues/3508 然而,那里提到的解决方案都不适合我。有人有解决办法吗?
查看相关工单中的讨论线索后,我认为要避免此问题,需要满足两个条件:
我的案例的根本原因是,实际上我的飞行脚本是由我们的一个内部库执行的,该库负责与数据库相关的人员。 因此必须更改库中的配置,如下所示:
public class FlywayBootConfigureProperties extends ClassicConfiguration {
FlywayBootConfigureProperties(String location) {
this.configure(Map.of("flyway.postgresql.transactional.lock","false"));
this.setLocationsAsStrings(location);
}
}