What support does Liquibase have for ScyllaDB?
Last updated: July 13, 2026
ScyllaDB is a Cassandra-compatible database. Liquibase uses the Cassandra extension to connect to and deploy changes to ScyllaDB. For connection setup, see Connect Liquibase with Cassandra.
Supported Liquibase Secure Features
The following Liquibase Secure features are supported with ScyllaDB:
Policy Checks: Changelog checks and database checks are both supported.
Secrets Management: AWS Secrets Manager, AWS S3, and HashiCorp Vault are compatible with Liquibase and operate independently of the target database.
Structured Logging: Supported. Use
--log-format=jsonto enable.Operation Reports: Update, rollback, diff, drift, and checks run reports are all supported.
Flow Files: Supported.
Note: The DATABASECHANGELOGHISTORY table is not supported for ScyllaDB. Passing --dbclhistory-enabled=true does not create the table.
Supported Liquibase commands
The following Liquibase commands are available with ScyllaDB:
Command | Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Not Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Not Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
| Supported |
Supported change types
The following standard Liquibase change types are available with ScyllaDB:
Change type | Supported |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Supported |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Supported |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Supported |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Supported |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Supported |
| Not Supported (the object does not exist on ScyllaDB) |
| Supported |
| Not Supported (the object does not exist on ScyllaDB) |
| Supported |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Supported |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Supported |
| Supported |
| Supported |
| Not Supported |
| Supported |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Not Supported (the object does not exist on ScyllaDB) |
| Supported |
| Supported |
| Supported |
Known limitations
1. UPPERCASE identifiers fold to lowercase
CQL does not preserve case for unquoted identifiers. A table created as ORDERS is stored as orders. The Cassandra extension does not quote identifiers, so case-sensitive names are not supported.
Workaround: Use lowercase names in all changesets.
2. Preconditions
Most standard Liquibase preconditions are supported with ScyllaDB. The following preconditions return incorrect results: columnExists, indexExists, primaryKeyExists, and tableIsEmpty.
Workaround: Use the sqlCheck precondition as a substitute. Custom SQL queries run correctly against ScyllaDB.