Liquibase is trying to execute executed scripts

we need rename changelog files which are already executed by liquibase to use relative path of master file.

When we changed filesnames in master change log from this

<include file="src/main/resources/db/changelogs/changelog-1.26.xml"/>` 

to

<include relativeToChangelogFile="true" file="db/changelogs/changelog-1.26.xml"/>

From this change Liquibase always trying to execute same scripts which were executed in past.

Can you tell me how to solve this? We really need change this path to be able execute scripts from test scope.


Without specifics, it's nearly impossible to give valid advice. However, Liquibase creates an entry in the change log table in your database for each 'change' that it executes. It computes a checksum for each of these comprised of values which are pertinent to each change. If you ever modify any of your changes, the computed checksum will no longer be the same, and won't match the one stored in your database, and Liquibase will then try and execute the 'updated' change. If you can get away NOT making changes to your prior liquibase changesets, I'd recommend that approach. However, if you must make changes, you may be able to use specify preconditions that would prevent the sort of errors you're describing.