我正在尝试使用liquibase来跟踪使用dropwizard-migrations对
postgresql数据库的更改.我希望能够在现有的生产数据库上运行迁移,而不是从头开始重建.现在我正在测试分期.我已经创建了一个带有前提条件的变更集.
<changeSet id="3" author="me"> <preConditions onFail="CONTINUE"> <not> <sequenceExists sequenceName="emails_id_seq"/> </not> </preConditions> <createSequence sequenceName="emails_id_seq" startValue="1" incrementBy="1" /> </changeSet>
我的目标是如果序列已经存在则跳过应用变更集.看起来很简单,但它不起作用.
ERROR [2013-09-13 22:19:22,564] liquibase: Change Set migrations.xml::3::me Failed. Error: Error executing sql CREATE SEQUENCE emails_id_seq START WITH 1 INCREMENT BY 1: ERROR: relation "emails_id_seq" already exists ! liquibase.exception.DatabaseException: Error executing sql CREATE SEQUENCE emails_id_seq START WITH 1 INCREMENT BY 1: ERROR: relation "emails_id_seq" already exists
我也尝试过使用MARK_RAN而不是CONTINUE.没有运气.
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。