You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
CREATE FUNCTION ${schemaname}.example(...)
RETURNS TABLE
(...) AS $$ .... $$
Before the checksum was calculated over the change set and every schema had the same checksum.
I looks like that after 4 .25.1 the property values are replaced in or with the value and then the checksums are calculated. Which results in a different checksum for every database schema.
To fix this. A <validCheckSum> needs to be added for every schema. Or the checksum needs to be removed from the databasechangelog table for these change sets in every schema.
Steps To Reproduce
Run the changeset where the propertie ${schemaname} is filled with the datbase schema name for multiple schemas with 4.25.1 and then rerun with 4.26.0 and it will fail on validation because the checksum is different for every schema.
And example.sql is some CREATE FUNCTION ${schemaname}.example() AS $$ .... $$
Liquibase should do a checksum upgrade when the method of calculation changes
Liquibase Version
4.26.0
Database Vendor & Version
PostgreSQL 16
Liquibase Integration
Spring
Liquibase Extensions
No response
OS and/or Infrastructure Type/Provider
No response
Additional Context
We extend SpringLiquibase to set the schemaname based on the contextFilter. For some context the change set would run multiple times every time for a different schema
Are you willing to submit a PR?
I'm willing to submit a PR (Thank you!)
The text was updated successfully, but these errors were encountered:
Search first
Description
This change set worked from 2018 with versions up to
4.25.1
. From4.26.0
the checksum calculation changed.example.sql
Before the checksum was calculated over the change set and every schema had the same checksum.
I looks like that after
4 .25.1
the property values are replaced in or with the value and then the checksums are calculated. Which results in a different checksum for every database schema.To fix this. A
<validCheckSum>
needs to be added for every schema. Or the checksum needs to be removed from the databasechangelog table for these change sets in every schema.Steps To Reproduce
Run the changeset where the propertie ${schemaname} is filled with the datbase schema name for multiple schemas with 4.25.1 and then rerun with 4.26.0 and it will fail on validation because the checksum is different for every schema.
And example.sql is some CREATE FUNCTION${schemaname}.example() AS $ $ .... $$
Expected/Desired Behavior
Liquibase should do a checksum upgrade when the method of calculation changes
Liquibase Version
4.26.0
Database Vendor & Version
PostgreSQL 16
Liquibase Integration
Spring
Liquibase Extensions
No response
OS and/or Infrastructure Type/Provider
No response
Additional Context
We extend SpringLiquibase to set the schemaname based on the contextFilter. For some context the change set would run multiple times every time for a different schema
Are you willing to submit a PR?
The text was updated successfully, but these errors were encountered: