Hacker News new | ask | show | jobs
by shekharshan 2099 days ago
My organization is a big fan of Liquibase. We execute Liquibase using Jenkins. It has a lot of awesome features such as ability to re-execute some changesets if file has SHA signature has changed. You can also decide to re-run some SQL files on every deployment. For example we run ANALYZE on our Postgres RDBMS at each deployment, just to ensure that as part of deployment the stats is updated for the query planner.
1 comments

I too am a fan. The `updateTestingRollback` command is great for testing to ensure the complete schema is defined and no manual changes are needed. I run it before running the unit and integration tests. The `validate` command is also good, but doing the full update, rollback, and update again is much better at finding issues in a controlled environment. (ie. don't run it in prod).

> 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. [0]

0: https://docs.liquibase.com/commands/community/updatetestingr...

Thanks, that is really great. I didn't know about that one.