Multiple changes per changeset in Postgres

Hey! I am setting up Liquibase in an existing Postgres database. We need to decided the standards for the team to follow when adding new changelogs.

I have read that the best-practice is to have a single change per changeset to avoid a partial successful state. However, I also know that Postgres supports transactional DDL, and that each changeset is executed in a single transaction by default. Therefore, in this specific case there would be no risk of leaving the DB in an inconsistent state, since all of them would be rolled back on error.

We don’t plan on changing the DBMS in the future. So compatibility with other systems is not an issue. We are leaning towards allowing multiple changes per changeset, but I’m wary of going against explicit best-practices. Is there any caveat I am not aware of?

Multiple DDL per changeset is perfectly fine with Postgres. It definitely is not fine with Oracle.