New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make Checksum-Update downwards compatible #5761
Comments
@robert-gdv - I have an update for you from the engineering team: Liquibase now manages both the v8 and v9 checksum versions. Moving forward, this will not be a problem. If you need to revert back to a version before 4.24.0, then you will need to use clearChecksums. |
@kevin-atx : Thank you for your information. Although it is not totally clear. Are you informing me about a new feature or do you want to tell me how to solve the issue with the current system? Downwards compatiblity was already working. AFAIK the checksums were simply updated to a newer version. My issue is that manual intervention with the DB is in production more costly to organize. Only very few have the permission to modify the DB. And because of the checksum-rewrite a liquibase minor version update requires a DB-Admin support. |
We are facing similar issue - spinnaker/spinnaker#6941 |
@kirangodishala : You made quite a Version jump. This enhancement is about how different versions of checksums are stored. |
@robert-gdv - It's a big leap but we verified with the versions in between, and the checksum issue started with 4.23.0. Probably I need to raise a new issue then? |
Search first
Description
We updated our Spring Boot Server from Liquibase 4.20.0 to 4.24.0. There was no new db.changelog file. So this update wasn't expected to have modified the DB.
But apparently the checksum algorithm was changed to a checksum starting with
9:
instead of8:
.Due to other issues, we had to rollback and deploy the previous version of the server.
But it failed to start, because of a lot of checksum issues. I assume, that it just didn't know the
9:
checksum.In #1681 (comment) @molivasdat suggested two solutions:
Steps To Reproduce
Expected/Desired Behavior
E.g. liquibase 4.20.0 writes
and liquibase 4.24.0 should add
When verifying the checksum, liquibase should check only the highest existing checksum version it knows:
liquibase 4.20.0 (after server version rollback) should check
8:abcdef
and ignore9:345abc
.If only unknown checksum versions are available for a changeset, then I would expect liquibase to behave as it does now (check validCheckSum, fail)
Liquibase Version
4.24.0
Database Vendor & Version
com.oracle.database.jdbc:ojdbc10 v19.22.0.0
Liquibase Integration
spring boot
Liquibase Extensions
No response
OS and/or Infrastructure Type/Provider
RedHat
Additional Context
I don't know anything about the internal behaviour of liquibase. So some wording/behaviour might be wrong. I would be glad if you try to understand the general issue and feature request.
Are you willing to submit a PR?
The text was updated successfully, but these errors were encountered: