Support Article
Extreme Slowness - Out of memory issue observed
SA-36941
Summary
Frequently observed the java exception with Pega 7.2.
Error Messages
java.lang.OutOfMemoryError: PermGen space.
Steps to Reproduce
Not Applicable
Root Cause
DirectStreamEncoder within PRPC represents the serialized version of a Clipboard Page.
Resolution
Here is the explanation:
Add prconfig entry below (recycle JVM) which resets the DirectStreamEncoder object’s contents before returning the instance to the pool, that is, all ArrayList and byte[] references are reset to their default size like 8 for ArrayList and 1024 for byte[].
Otherwise with the current state, the memory footprint can grow depending on the size of clipboard pages loaded concurrently.
The corresponding clipboard page may not be in use anymore but the encoder will continue to exist until picked again (and the new size corresponds to the new clipboard page being loaded).
This non-default DirectStreamEncoder size in memory has no impact on the performance with clipboard page operations, so use setting below to maintain a low referenced or live object memory footprint:
<env name="clipboard/encoder/poolConfig" value="reset-contents" />
Published May 16, 2017 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.