

Liquibase Community Documentation
Liquibase Community is a community-supported tool to help manage database change.
Check out what everyone has been reading about
What is a changelog?
What is a changeset?
What are preconditions?
Introduction to Liquibase
Get started with Liquibase
What support does Liquibase have for Microsoft SQL Server?
What is the Liquibase properties file?
What are contexts?
Frequently Asked Questions
If you want to create a schema that doesn't already exist, you can do this with Liquibase in two ways: using formatted SQL or an XML changelog with the SQL tag.
For detailed instructions on how to do this, visit our Creating a New Schema article in the Liquibase Knowlegebase.
When doing a deployment through Liquibase, all changes are stored in the DATABASECHANGELOG table. One value stored is the checksum, which is an MD5 sum of the changeset.
During deployment, each changeset in the changelog will have its checksum calculated. If the changeset has already been deployed, the calculated checksum value will be compared against what is in the DATABASECHANGELOG table for that changeset.
A checksum error will occur if the calculated checksum differs from what is stored in the DATABASECHANGELOG table and doesn't have an attribute (runOnChange or runAlways) to update the checksum.
If this is a problem that you're having, visit our How to resolve checksum errors article in the Liquibase Knowlegebase.
Liquibase will deploy changesets and store the Liquibase tracking tables (DATABASECHANGELOG and DATABASECHANGELOGLOCK tables) in the database's default schema. However, Liquibase has additional attributes to allow greater control over which schema changesets will be deployed and where to store and update the Liquibase tracking tables.
If this sounds like your issue, visit the article How to specify schema names for Postgres? in the Liquibase Knowledgebase.
When running Liquibase, the below error occurs. This error indicates that the Liquibase changeset is missing required syntax.
Error Message
ERROR: Exception Details
ERROR: Exception Primary Class: ClassCastException
ERROR: Exception Primary Reason: java.util.ArrayList cannot be cast to java.util.Map
ERROR: Exception Primary Source: Microsoft SQL Server 15.00.4345
Unexpected error running Liquibase: Error parsing /file/path.yaml : Syntax error in file file/path/changeset.yaml: java.util.ArrayList cannot be cast to java.util.Map
If this is your issue, visit the Error parsing when running Liquibase article in the Liquibase Knowledgebase.
Learn all about Liquibase
Learn Liquibase, level up your learning, and stand out as a subject matter expert with certifications and digital credentials. Free for all users!
