RollbackRequired

Last updated: July 14, 2025

This check enforces the Liquibase best-practice recommendation to include rollbacks to every changeset.

Uses

Property

Value

Liquibase version required

4.7.0+

Scope (--checks-scope)

changelog

Default status

enabled

Default severity (exit code)

0 ("INFO")

Customizable settings

No (static)

Use the check to warn when a changeset does not contain a rollback, which can hamper efforts to restore to a previous database schema if problems are encountered either during or after deployments. When problematic changes are deployed to an environment, Liquibase can immediately rollback the change if a rollback was included. But, if not, the team will have to craft a new changeset and “roll-forward” to fix the issue, which is a valid problem mitigation strategy as well. This policy check, like other checks, can be configured with a severity level which returns an exit code designed to stop automated jobs, giving your team time to apply this Liquibase best practice.

Note: RollbackRequired only supports modeled changeset types. If you use this Policy Check with unmodeled changesets (formatted SQL changelogs as well as sql and sqlFile changeTypes), a message will appear stating the changeset was skipped.

Before you begin

  1. Ensure that you have correctly specified your Liquibase Pro license key.

  2. Ensure that the --checks-scope parameter includes the scope of this check.

Changelog checks prerequisites

--license-key=<string>
--checks-scope=<string>

Procedure

1

Enable

This check is enabled by default. To verify that it is currently enabled, run the checks show command:

liquibase checks show --check-name=<string>

2

To run the check, use the checks run command.

liquibase checks run --check-name=<string>

Note: For flow files you'll need to run liquibase flow to apply your changes.

RollbackRequired - Liquibase