fail-on-null-snapshot-id

The --fail-on-null-snapshot-id global parameter controls whether Liquibase fails when it encounters a null snapshot ID during database inspection operations, such as snapshot, diff, diff-changelog, and generate-changelog. This can occur when your database schema contains objects that Liquibase cannot fully parse or recognize.

Uses

By default, Liquibase fails when it encounters a null snapshot ID. This happens when Liquibase finds database objects that are "referenced" but cannot be parsed or identified in a Liquibase-known way. While your schema setup may be legitimate, Liquibase may not yet support certain object configurations.

Set --fail-on-null-snapshot-id=false to allow Liquibase to skip unparseable objects and continue operations instead of failing the job.

When this parameter is set to true (the default) and a null snapshot ID is encountered, Liquibase displays the following error:

ERROR: Exception Primary Reason: Found a null snapshotId for table <tablename>. To suppress this failure, set --fail-on-null-snapshot-id=false

Syntax

You can set this parameter in the following ways:

Option

Syntax

Liquibase properties file (defaults file)

liquibase.failOnNullSnapshotId: <true|false>

Global CLI parameter

liquibase --fail-on-null-snapshot-id=<true|false> <command>

JVM system property (JAVA_OPTS environment variable)

Unix:

JAVA_OPTS=-Dliquibase.failOnNullSnapshotId=<true|false>

Windows:

JAVA_OPTS=-D"liquibase.failOnNullSnapshotId"=<true|false>

Liquibase environment variable

LIQUIBASE_FAIL_ON_NULL_SNAPSHOT_ID=<true|false>