Liquibase stripping trailing 0 characters from changset identitiers?

I don’t know if it’s relevant but I am using YAML for my by changelogs and LQ 4.8.0.

So I’m using a convention for my changeset identifiers (or I was going to!) where I have seperate changelogs for various parts of my system with each change being identified with a number corresponding to the changelog file a dot and then a number for the changset itself so 1.1, 1.2, 1.3 would be changsets within one file and 2.1, 2.2, 2.3 would be changsets in an another file. Each file being brought in by a master changelog that includes them.

However, I started to run into complaints about duplicate identifiers, as far as I could make out LQ was seeing 2.3 and 2.30 as the identifier, that is it was stripping the trailing ‘0’ from the identifier.

Is this as designed, or a bug or some strange behavior of YAML?

1 Like

So I’m guessing this is a bug then?
Where do I submit them for the liquibase core?

Sounds like it could be a bug to me. You can log an issue here: Sign in to GitHub · GitHub


On second thought, can you try wrapping the ID in double quotes? That will encourage/force the YAML parser to interpret the ID as a string which will (likely) not drop the trailing zero like a number would.

Looks like that worked, may need to update the documentation?

Good idea. I will open up a ticket with our doc team to update the documentation.