What Lakebase (Databricks Postgres) features does Liquibase Secure support?
Last updated: June 9, 2026
Lakebase (Databricks Postgres) is a fully managed PostgreSQL-compatible database service built on Databricks serverless compute. It exposes a standard PostgreSQL endpoint at jdbc:postgresql://<instance-id>.database.cloud.databricks.com:5432/databricks_postgres, enabling connections using the standard PostgreSQL JDBC driver.
Liquibase Secure users can use all standard Liquibase Community Change Types with Lakebase, as well as additional Secure-specific Change Types. No dedicated Liquibase extension is required. Lakebase uses the standard PostgreSQL JDBC driver.
To learn how to install, configure, and use Liquibase with your Lakebase instance, see Connect Liquibase with Lakebase.
Features
Supported Liquibase Secure features
Policy Checks: Automatically analyze your changelogs to ensure the desired format and behavior, increasing deployment success rates and upholding security best practices.
Secrets Management: Keep your authentication data secure by integrating it with third-party secrets vaults. AWS Secrets Manager, AWS S3, and HashiCorp Vault are verified to be compatible with Liquibase.
Structured Logging: Improve your database observability by easily reading Liquibase data in your favorite analytics tool. Use
--log-format=jsonto enable.Operation Reports: Generate HTML reports for
update,rollback,diff,drift, andcheck-runoperations.Flow Files: Create repeatable, portable, and platform-independent Liquibase workflows to run in any of your CI/CD tools.
DATABASECHANGELOGHISTORY table (DBCLH): Record a history of all changes you make to the database, including changes not tracked by the DATABASECHANGELOG table. Pass
--dbclhistory-enabled=trueto both theupdateanddbcl-historycommands, or setliquibase.dbclhistory.enabled=trueinliquibase.propertiesto enable globally.Remote file access: Centralize file management with AWS S3 to build a reusable repository of Liquibase files you can update and retrieve.
Supported Change Types
Lakebase behaves as standard PostgreSQL from a Liquibase perspective. There are no Lakebase-specific Change Types, and no dedicated Liquibase extension is required.
Change Type | Limitations |
|---|---|
addAutoIncrement | |
addCheckConstraint | Body text syntax required; the |
addColumn | |
addDefaultValue | |
addDefaultValueBoolean | |
addDefaultValueComputed | |
addDefaultValueDate | |
addDefaultValueNumeric | |
addDefaultValueSequenceNext | |
addForeignKeyConstraint | |
addLookupTable | |
addNotNullConstraint | |
addPrimaryKey | |
addUniqueConstraint | |
alterCompositeTypeAttributes | |
alterSequence | |
changeCompositeTypeOwner | |
createCompositeType | Use the |
createFunction | |
createIndex | |
createMaterializedView | Use a |
createProcedure | Requires |
createSequence | |
createTable | |
createTrigger | The trigger function must pre-exist before deploying the trigger changeset. |
createView | |
delete | |
disableTrigger | |
dropAllForeignKeyConstraints | |
dropCheckConstraint | |
dropColumn | Requires an explicit |
dropDefaultValue | |
dropForeignKeyConstraint | |
dropFunction | Omit the |
dropIndex | |
dropMaterializedView | |
dropNotNullConstraint | |
dropPrimaryKey | |
dropProcedure | Omit the |
dropSequence | |
dropTable | |
dropTrigger | |
dropUniqueConstraint | |
dropView | |
enableTrigger | |
insert | |
loadData | |
loadUpdateData | |
mergeColumns | |
modifyDataType | |
renameColumn | |
renameSequence | |
renameTable | |
renameTrigger | |
renameView | |
setColumnRemarks | |
setTableRemarks | |
sql | |
sqlFile | |
update |
Change Types not supported by Lakebase
createTableClone
createSnapshotTable
createExternalTable
disableCheckConstraint
enableCheckConstraint
dropExternalTable
dropSearchIndex
Supported parameters
You can use all normal Liquibase parameters with Lakebase. No extension-specific parameters are required — Lakebase uses the standard PostgreSQL JDBC driver.
Note: Lakebase authenticates via OAuth JWT tokens with an approximate 1-hour expiry. Automated pipelines must include a token refresh mechanism before each Liquibase run.
To target a non-public schema, set --defaultSchemaName in the CLI, in flow files, in your liquibase.properties file, or as an environment variable. Both public and non-public schemas have been tested and verified on Lakebase.
Note: Lakebase reports the connecting user without the @domain suffix (e.g., user instead of user@liquibase.com). If you use the runningAs precondition, specify the bare username rather than a full email address.
Supported commands
You can use the Liquibase CLI commands or Liquibase Maven goals with Lakebase:
Update Commands
Rollback Commands
Init Commands
Change Tracking Commands
Database Inspection Commands
Utility Commands
Flow Commands
Policy Checks Commands
Data type handling
Change Type | Description | Supported |
|---|---|---|
datatypes.arrays | INT[], TEXT[], BOOLEAN[] | Yes |
datatypes.binary | BYTEA | Yes |
datatypes.bitstring | BIT(8), BIT VARYING(16) | Yes |
datatypes.boolean | true, false | Yes |
datatypes.character | CHAR, VARCHAR, TEXT | Yes |
datatypes.datetime | DATE, TIME, TIMESTAMP, TIMESTAMPTZ, INTERVAL | Yes |
datatypes.geometric | POINT, LINE, LSEG, BOX, PATH, POLYGON, CIRCLE | Yes |
datatypes.json | JSON, JSONB | Yes |
datatypes.money | MONEY column creates successfully but INSERT fails: invalid input syntax for type numeric: "$12.34" — Lakebase maps MONEY to NUMERIC internally and does not accept currency-prefix notation. Use plain numeric literals (e.g., 12.34) in insert or loadData changesets. | No |
datatypes.network | INET, CIDR, MACADDR | Yes |
datatypes.numeric | INT2/4/8, FLOAT4/8, NUMERIC, DECIMAL | Yes |
datatypes.serial | SERIAL, BIGSERIAL, SMALLSERIAL | Yes |
datatypes.smallint | SMALLINT | Yes |
datatypes.uuid | UUID | Yes |
datatypes.xml | XML | Yes |
Lakebase features not supported by Liquibase
Delta Lake / Unity Catalog Foreign Tables
Three-Level Namespace (
catalog.schema.table)Vector Search (
pgvector)Databricks AI Functions
Serverless Compute Cold-Start
Unity Catalog Privilege Model