traccar 4.13 upgrade failure

renaud3 years ago

Hello,

I upgraded traccar to 4.13, and, now, when starting, I get an error from liquibase.

2021-06-02 08:49:54 ERROR: Main method error - The file /usr/local/share/traccar/schema/changelog-master.xml was not found in - . Specifying files by absolute path was removed in Liquibase 4.0. Please use a relative path or add '/' to the classpath parameter. - ChangeLogParseException (... < DataManager:293 < *:86 < Context:290 < Main:120 < ...)

Anton Tananaev3 years ago

The error seems pretty self explanatory. Have you tried following the suggestion?

renaud3 years ago

I can't really use a relative path as I have no idea where it starts.

renaud3 years ago

Of course, if I do something like <entry key='database.changelog'>../../../../../usr/local/share/traccar/schema/changelog-master.xml</entry>, it works, but it's quite far from being clean.

Anton Tananaev3 years ago

This is a limitation of a third party library. We don't really have a control over it.

renaud3 years ago

There is still the add '/' to the classpath parameter which could be done.

Anton Tananaev3 years ago

We are not going to add root folder to the classpath just for this. It seems wrong and probably would cause some security issues.

renaud3 years ago

Indeed, it's not really clean either and security wise, it's probably not a great idea. But I doubt they would revert the behaviour even if I submit an issue.

It seems that OpenBSD package works with ../../, so that's what I added.