API Gateway 9.2 (Appliance). The current java version is "1.8.0_102".
"- XX: MaxPermSize = 256 M" is set as the Java startup option. Howerver, the corresponding memory area was changed from JDK 8 to metaspace. So, it seems this option is not enable.
Is the Java option("- XX: MaxPermSize = 256 M") correct? If it is incorrect how should it be changed?
Environment
API Gateway 9.2 API Gateway 9.3
Resolution
In JDK 8.0 the Permanent Generation (PermGen) space has completely been removed and is kind of replaced by a new space called Metaspace. The consequences of the PermGen removal is that obviously the PermSize and MaxPermSize JVM arguments are ignored and you will never get a java.lang.OutOfMemoryError: PermGen error. The JDK 8 HotSpot JVM is now using native memory for the representation of class metadata and is called Metaspace. So no need to use Java option("- XX: MaxPermSize = 256 M") for above JDK 8.0 versions
Alos, as of now there isn't a need to set a Metaspace size. Considering the major reason that Java made this change was to allow the JVM to dynamically adjust its size during runtime.
for more info on metaspace https://dzone.com/articles/java-8-permgen-metaspace