updateTestingRollback does not execute rollbacks when system timezone is ahead of UTC


I use a test in my CI runs to automatically run liquibase rollback tests like so:

Looking at the test runs, I saw that they were always passing even though I intentionally included a failing rollback command to verify that this test would catch broken rollbacks. Looking at the logs (attached), I noticed that the rollback SQL was never getting executed.

I tried to debug the problem and it seems to me that the date sent to the ExecutedAfterChangeSetFilter class constructor is in a different timezone (system time, IST for me) than the date of the ranChangeSet items (screenshot attached). Since it only picks changesets which have been executed AFTER the passed in date for rollback, none of the changesets get picked for rollback and this never gets executed.


O/S: macOS 10.15.3
Stack: Dropwizard (2.0.0), JDK (13.0)


Vinay Shenoy


Affects versions