From time to time I make changeset changes and liquibase correctly tells me that I have made a checksum error. If I don’t care about the checksum error I can manually update my changelog to set the checksum to null and let liquibase recalculate the checksum next time I run that changeset.
Lately I have thought it would be nice if I could when I run the liquibase update give it an additional parameter that would direct liquibase to just change any incorrect changesums on this run.
Does that sound like a good change or does it sound like a feature that would likely incourage bad changeset behavior.
We have come across a similar issue but in the context of databases being moved to different RDBMS. Our changesets are parameterized with properties whose value depend on the actual database, and the checksum is computed after variable interpolation hence when the database is moved to another RDBMS, checksum comparison fails. Setting checksums to null using SQL is straightforward workaround over this issue but it is a bit cumbersome and your proposal could be useful in our context.
Another solution which suits our context but probably not yours would be to store changes checksums before variable interpolation.