traccar 4.13 upgrade failure

renaud 5 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 Tananaev 5 years ago

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

renaud 5 years ago

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

renaud 5 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 Tananaev 5 years ago

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

renaud 5 years ago

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

Anton Tananaev 5 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.

renaud 5 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.