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
Ensure that you have correctly specified your Liquibase Pro license key.
Ensure that the
--checks-scope
parameter includes the scope of this check.
Changelog checks prerequisites
--license-key=<string>
--checks-scope=<string>
Procedure
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>
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.