about MaxPermSize of jvm option.
search cancel

about MaxPermSize of jvm option.


Article ID: 111486


Updated On:


STARTER PACK-7 CA Rapid App Security CA API Gateway


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?


API Gateway 9.2
API Gateway 9.3


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