Error with ANTLR Parser: ANTLR Runtime version 4.9.3 used for parser compilation does not match the current runtime version 4.7.2

Good morning,

I recently upgraded a large instance from 2.34 to 2.37.8, upgrading incrementally through each version. I now see the above error in catalina.out, especially associated with data synchronisation jobs.

These are the ANTLR jars I can find - I’m unsure where the directive to use ANTLR 4.9.3 comes from.
/webapps/ROOT/WEB-INF/lib/antlr4-runtime-4.7.2.jar
/webapps/ROOT/WEB-INF/lib/dhis-antlr-expression-parser-1.0.13.jar

Any suggestions on how to resolve this issue please?

ANTLR Runtime version 4.9.3 used for parser compilation does not match the current runtime version 4.7.2

thanks,

Pierre

Hi @pierredane,
Welcome back to the community!

Version by version upgrade is only required for versions from v2.30 or above; however, for versions from v2.30 and above, it’s possible to upgrade directly. If your intention is to upgrade to 2.38.1 which is the latest release would you try to upgrade directly and see if you still get the same error?

The error appeared only when you upgraded from 2.36 → 2.37.8, right? If you’d like to share the Catalina.out log (without the sensitive info) it might help to check if there’s a bug.

Thank you so much!

Hi @pierredane,

This is a known issue, whereby the ANTLR version used to build the anltr-expression-parser project does not match the version referenced in the dhis2-core project. As far as we know these version mismatch messages are harmless and can be ignored. We are still working on a better way to coordinate the versions between the projects to avoid these messages.

Cheers,
Jim

1 Like