我们将flyway与cloudfoundry一起使用。简而言之,我们无法控制数据库的用户名/密码(根据设计),它是一个超过 30 个字符的非常长的字符串。当我尝试运行迁移时,出现以下错误:
flyway.core.api.FlywayException: Unable to insert metadata table row for version 0
... stacktrace ...
Caused by: org.postgresql.util.PSQLException: ERROR: value too long for type character varying(30)
... more stacktrace ...
我可以将 flyway 配置为忽略元数据表中的安装列吗?我怀疑这可以通过使用更大的列构建 flyway 或连接用户名来解决。
编辑
我可以通过登录数据库并手动将列扩展到 50 个字符来缓解这个问题:
alter table schema_version alter column installed_by set data type character varying(50);
它仍然是设置中的手动步骤,应该是不干涉的,所以这可能仍然是 flyway 中的功能请求(支持更大的用户名)。