Migration of JVM settings from Oracle JDK 8 to OpenJDK 11

In large environments, it was recommended to run Oracle JDK 8 and it is very likely some specific JVM settings where set. With migrating in Horizon 24+ to run with OpenJDK 11 some of these JVM specific settings will not work the startup will not be successful with an error message Unrecognized VM option. This article collects a few JVM option candidates which can be set in production but won’t work with OpenJDK 11 anymore. Check your opennms.conf or JAVA_OPTS when you running with Docker before upgrading from Horizon < 24 to a Horizon >=24:

Unrecognized in OpenJDK 11:

  • -d64
  • PrintGCTimeStamps
  • UseGCLogFileRotation
  • NumberOfGCLogFiles
  • GCLogFileSize

Deprecated and need to be migrated:

  • -Xloggc:/opennms-data/logs/gc.logis deprecated and needs to be -Xlog:gc:/opennms-data/logs/gc.log instead.

I believe it worth mentioning the replacements for GC logging. The following has a good summary about it:


1 Like