Platform Container
To change the Java version on the Platform Container:
Ensure that the memory settings for Java are set correctly in STR.
Platform Default settings when using an Oracle database:
Code Block language text theme Eclipse $ mzsh topo set topo://container:<container>/pico:platform/obj:config.jvmargs \ 'xmx:["-Xmx1024M"] xms:["-Xms128M"] maxMetaspace:["-XX:MaxMetaspaceSize=256M"]
Default settings when using a Derby database:
Code Block language text theme Eclipse $ mzsh topo set topo://container:<container>/pico:platform/obj:config.jvmargs \ 'xmx:["-Xmx1024M"] xms:["-Xms192"] maxMetaspace:["-XX:MaxMetaspaceSize=256M"]
EC Default settings:
Code Block language text theme Eclipse $ mzsh topo set topo://container:<container>/pico:<pico-name>/obj:config.jvmargs \ 'xmx:["-Xmx256M"] xms:["-Xms64M"] maxMetaspace:["-XX:MaxMetaspaceSize=196M"] maxDirect:["-XX:MaxDirectMemorySize=4096M"] args : ["-server"]'
- Install the new JDK. Do not remove the old version.
Disable all workflow groups from the Execution Manager in Desktop, or by entering an mzsh command, for example:
Code Block theme Eclipse $ mzsh mzadmin/<password> wfgroupdisable \*
Note title Note! If you use the
wfgroupdisable
command, make sure that you enable all system tasks again when you are done.- Stop all workflows that are not disconnected and let them finish execution.
Ensure that all users shut down any connected Desktops.
If you want to see which Desktops that are connected, you can use the following command:Code Block theme Eclipse $ mzsh mzadmin/<password> pico -view
Note title Note! This command will also display other pico instances, such as Execution Contexts.
Shut down the Platform and all ECs.
Code Block theme Eclipse $ mzsh shutdown Platform <ec_name>
If you have set the environment variable JAVA_HOME, change it to the install path of the new JDK. Set the variable in both the current shell and the login script. This is only required if you want to override the default value in the mzsh script.
Info title Example - Setting JAVA_HOME in the shell Code Block export JAVA_HOME="/usr/lib/jvm/java-17-openjdk-17.0.6.0.9-0.3.ea.el8.x86_64"
Set JAVA_HOME in
MZ_HOME/bin/mzsh
to the install path of the new JDK.Info title Example - Setting JAVA_HOME in mzsh Code Block $ mzsh topo env --update-java-home "/usr/lib/jvm/java-17-openjdk-17.0.6.0.9-0.3.ea.el8.x86_64"
Start the Platform and ECs.
Code Block theme Eclipse $ mzsh startup Platform <ec_name>
- Start the real-time workflows.
- Enable the workflow groups.
Execution Container
To change the Java version on an Execution Container:
- Install the new JDK. Do not remove the old version.
If you have set the environment variable JAVA_HOME, change it to the install path of the new JDK. Set the variable in both the current shell and the login script. This is only required if you want to override the default value in the mzsh script.
Info title Example - Setting javahome Code Block language text theme Eclipse javahome="/usr/lib/jvm/java-17-openjdk-17.0.6.0.9-0.3.ea.el8.x86_64"
Set JAVA_HOME in
MZ_HOME/bin/mzsh
to the install path of the new JDK.Info title Example - Setting JAVA_HOME in mzsh Code Block $ mzsh topo env --update-java-home "/usr/lib/jvm/java-17-openjdk-17.0.6.0.9-0.3.ea.el8.x86_64"
Restart the ECs and Stop the real-time workflows. To minimize downtime, restart the ECs one by one.
To restart an EC:
Code Block language text theme Eclipse $ mzsh shutdown <ec name> $ mzsh startup -f <ec name>
Start the workflows on the restarted ECs.
Legacy Desktop Client
To change the Java version for the Legacy Desktop:
...