Where to find the memoryoptions
utility in a PingFederate installation and how the utility's expected behavior differs in a Linux
or Windows system.
PingFederate installation and upgrade tools use the memoryoptions utility to record the default options for the Java heap and the garbage collector (GC) in a configuration file. Regardless of available memory, PingFederate uses the Garbage-First (G1) GC. The script assumes that PingFederate will be the only service on the server and consume a majority of the memory. As needed, administrators can re-run the utility or manually edit the configuration file.
The memoryoptions utility, located in the <pf_install>/pingfederate/bin directory, comes in two variants:
- memoryoptions.bat for Windows
- memoryoptions.sh for Linux
You should not use the memoryoptions
script when you deploy PingFederate inside of a container. Instead, you should
edit the jvm-memory.options
file directly. In containers, you should
use the InitialRAMPercentage
and MaxRAMPercentage
JVM options to control the size of the heap.
Installation and upgrade
When the PingFederate installer is executed for Windows or a subsequent rerun of the memoryoptions utility, it creates a backup copy of the current jvm-memory.options and records the G1GC options in the jvm-memory.options file. Changes made as a result of the execution of the utility or a manual edit are activated after a restart of PingFederate.
Depending upon the selected tool and whether the jvm-memory.options file exists in the source installation, the expected behavior of the memoryoptions utility differs. In general, the jvm-memory.options file from the source installation is preserved without new recommended values.