updateTestingRollback command

updateTestingRollback tests rollback support by deploying all pending changesets to the database, executes a rollback sequentially for the equal number of changesets that were deployed, and then runs the update again deploying all changesets to the database.


updateTestingRollback is typically used when you want to test rollback functionality when deploying changesets in your changelog sequentially. Run updateTestingRollback only when all pending changelogs have been verified as ready to be deployed as you cannot specify changesets to exclude.

updateTestingRollback utilizes a multi-step operation and runs in sequential order:

  1. update changeset1; rollback changeset1; update changeset1
  2. update changeset2; rollback changeset2; update changeset2
  3. update changeset3; rollback changeset3 update changeset3

Note: The order of operations may be slightly different based on earlier versions of Liquibase.

If any of the changesets fail rollback, changesets that come after the failed changesets will not be tested or updated. Any changesets that come before the failed changesets will be deployed to the database.

Running the updateTestingRollback command

To run the updateTestingRollback command, you need to specify your driver, class path, URL, and user authentication information in your liquibase.properties file. You can also specify these properties in your command line.

Then run the updateTestingRollback command:

liquibase –-changeLogFile=mainchangelog.xml updateTestingRollback

Note: Enter the name of the changelog you want to use in place of mainchangelog.xml. You can also add the changeLogFile to your liquibase.properties file.

updateTestingRollback global attributes

Attribute Definition Requirement


The root changelog



The JDBC database connection URL



The database username



The database password