Support Article
BIX extract to XML throwing OutOfMemory exceptions
SA-21478
Summary
BIX extractions were run from command line to XML.
Command-line process runs with 18 GB maximum heap size for Java virtual machine (JVM), and batch size of 5000. While monitoring the system, entire18 GB is utilized before an exception is thrown.
Error Messages
Exception in thread "Thread-6" java.lang.OutOfMemoryError: Java heap space
Steps to Reproduce
Run the BIX extract process from command-line with the parameters mentioned above, and wait for the job to reach 18-GB memory.
Root Cause
A defect in Pegasystems’ code or rules in the declarative expression execution. Heapdump analysis reveals that the class com.pega.pegarules.data.internal.clipboard.ChangedPropertyListsImpl is a major contributor to the used space.
Resolution
Perform the following local-change:
Update the prconfig.xml file being used when running the BIX extraction from the command line to disable declarative/chaining. This significantly reduces the memory consumption and is the recommend setting set for BIX.
<env name="compatibility/BIXdisableForwardChaining" value="true" />
env name="compatibility/BIXdisableBackwardChaining" value="true" />
<env name="declarative/enabled" value="false" />
Published April 1, 2016 - 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.