Changeset update to liquibase-schema-only across versions of openmrs


I am from Bahmni team and we are upgrading from Platform 1.10.2 to 1.11.x. As part of our build process, we run the latest liquibase-schema-only.xml using our own puppet deployment.

Now the problem is that there are certain changesets that are failing because of checksum issues. The schema is updated without changing the changeset id.

For example, id: 1227303685425-14 is updated from 1.10.x and 1.11.x. A new column called display_precision is added here.

There are around 6 such changes that were done across the versions. We would like to know the intent behind it and how we proceed forward with our migration.

We’ve run into this problem as well.

The idea (I believe) is that when you are upgrading, you should only need to run the “liquibase-update-to-latest.xml”… the “liquibase-schema-only.xml” only should be run when starting from scratch with an empty database.

The problem is, our puppet script tries to run the “liquibase-schema-only.xml” on every deploy, so it often fails. I’ve got on my todos figuring out a way to fix the puppet script so that it only executes liquibase-schema-only when it’s dealing with a clean DB, but, till then, I’ve been enough those errors… :smile:

Thanks @mogoodrich So looks like its not mandatory that we run liquibase-schema-only.xml file for upgrade. I also see that the migrations/updates that are part of it are being done in liquibase-update-to-latest.xml.

i.e. if a new column as added in liquibase-schema-only.xml using the same “id”, it is also getting added to liquibase-update-to-latest.xml so that the migration is not lost once we upgrade. Can you please confirm if my understanding is correct.

Thanks a lot.

Yes, you are correct! (At least this should be the case, and if it isn’t, it’s bug… :slight_smile: )