In liquibase my changeset looks as below:
<createSequence schemaName="public"
incrementBy="1"
minValue="1"
sequenceName="user_seq" />
<createTable tableName="user" schemaName="public">
<column name="id" type="bigint" defaultValueSequenceNext="user_seq">
<constraints nullable="false" primaryKey="true"/>
</column>
</createTable>
My entity:
@Entity
@Table(name = "user")
public class User {
@SequenceGenerator(name="USER_SEQ",sequenceName="USER_SEQ")
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "USER_SEQ")
@Id
protected long id;
}
Validation step in spring boot does not pass. Hibernate throws:
Schema-validation: missing sequence [public.user_seq]
LiquiBase execute this query:
CREATE SEQUENCE public.user_seq INCREMENT BY 1 MINVALUE 1
Sequence user_seq created
When I change ddl-auto
to update, hibernate execute this query:
create sequence public.user_seq start 1 increment 50
And JDBC throws exception: Sequence "user_seq" already exists; SQL statement:
.
How to correctly create sequence in LiquiBase?
-- @Edit1 - I Try to use lowercase in entity: USER_SEQ -> user_seq - does not help