I noticed that the checksum logic works in RC1, but does not work in RC5. If I change a an external SQL file or change set XML, LiquiBase will run withoug a checksum error in RC5. Anyone else have this issue?
I noticed that the checksum logic works in RC1, but does not work in RC5. If I change a an external SQL file or change set XML, LiquiBase will run withoug a checksum error in RC5. Anyone else have this issue?
A more detailed explanation:
Say I execute the following change set:
<rollback>
<sqlFile path="sprintSQL/sprint1010/dml/amg_ins_tbl_appl_role_rate_change_bkout.sql"/>
</rollback>
If I modify the contents of amg_ins_tbl_appl_role_rate_change.sql and run:
using RC1 I will get a checksum error:
liquibase.exception.ValidationFailedException: Validation Failed:
1 change sets check sum
sprintSQL/sprint1010/sharc_b42248.xml::amg_ins_tbl_appl_role_rate_change::mchermside::(Checksum: 2:ac1099d3a7d
8a8d72fb73b84ef72ee2a)
at liquibase.changelog.DatabaseChangeLog.validate(DatabaseChangeLog.java:131)
at liquibase.Liquibase.update(Liquibase.java:97)
at liquibase.Liquibase.update(Liquibase.java:127)
at liquibase.integration.commandline.Main.doMigration(Main.java:678)
at liquibase.integration.commandline.Main.main(Main.java:105)
This is the behavior I would expect. However in RC5 when I execute the same command I get the following:
– Lock Database
– Release Database Lock
Sep 13, 2010 4:34:21 PM liquibase.logging.jvm.JavaUtilLogger info
INFO: Successfully released change log lock
It seems that the checksum logic does not behave the same way as RC1. Is this a know issue? We need the checksum logic for our builds to warn developers that they have edited a file rather than rolling forward by creating a new one.
Thanks, Todd
The way it is supposed to work is how it does in RC1. Warning developers of changes to the changelog is the point to the checksum. There is a fix for the upcoming RC6 already in trunk that should have resolved the issue.
Nathan