liquibase with postgres throws ERROR: column am.amcanorder on index exists precondition
liquibase with postgres throws ERROR: column am.amcanorder on index exists precondition
liquibase:4.9.0
postgres 驱动程序:42.3.4、42.3.3
postgres 服务器:13、14
liquibase precondition:
<changeSet id="metrics_indexes_v1" author="jim.hunter" dbms="postgresql">
**<preConditions onFail="MARK_RAN">
<not>
<indexExists indexName="metrics_instance_id_index" tableName="metrics"/>
</not>
</preConditions>**
<createIndex indexName="metrics_instance_id_index" tableName="metrics">
<column name="instance_id"/>
</createIndex>
<modifySql context="ENABLE-PARTITIONING">
<append value=" INCLUDE (metric_time, metric_value)"/>
</modifySql>
</changeSet>
抛出异常:
Caused by: liquibase.exception.DatabaseException: liquibase.exception.DatabaseException: org.postgresql.util.PSQLException: ERROR: column am.amcanorder does not exist
Position: 427
我读到 table pg_am 在 postgres 9.5 之后不再可用,但看起来 liquibase 仍在寻找它。这是液基问题吗?检查索引存在条件的推荐方法应该是什么?
这似乎已在
中得到回答
根据那里投票最高的答案,解决方法是更新您的 JDBC 驱动程序。
liquibase:4.9.0 postgres 驱动程序:42.3.4、42.3.3 postgres 服务器:13、14
liquibase precondition:
<changeSet id="metrics_indexes_v1" author="jim.hunter" dbms="postgresql">
**<preConditions onFail="MARK_RAN">
<not>
<indexExists indexName="metrics_instance_id_index" tableName="metrics"/>
</not>
</preConditions>**
<createIndex indexName="metrics_instance_id_index" tableName="metrics">
<column name="instance_id"/>
</createIndex>
<modifySql context="ENABLE-PARTITIONING">
<append value=" INCLUDE (metric_time, metric_value)"/>
</modifySql>
</changeSet>
抛出异常:
Caused by: liquibase.exception.DatabaseException: liquibase.exception.DatabaseException: org.postgresql.util.PSQLException: ERROR: column am.amcanorder does not exist
Position: 427
我读到 table pg_am 在 postgres 9.5 之后不再可用,但看起来 liquibase 仍在寻找它。这是液基问题吗?检查索引存在条件的推荐方法应该是什么?
这似乎已在
根据那里投票最高的答案,解决方法是更新您的 JDBC 驱动程序。