'java.lang.OutOfMemoryError' message during Batch execution in EngageOne Server



Batch (Accumulated or Non-Accumulated) execution fails with 'java.lang.OutOfMemoryError' in EngageOne Server.


Batch launches a new instance of Java Virtual Machine (JVM). The 'java.lang.OutOfMemoryError' is encountered when the JVM launched with Batch execution runs of out of memory. This could be caused due to large number of input record used during Batch execution.


UPDATED: May 21, 2019
The JVM settings of Java used by Batch can be changed by modifying -Xmx (Maximum Java heap size) parameter in the corresponding batch file. By default, this value is 512 MB which can be changed to bigger value depending upon the RAM size.

Changing it to 2 GB (2048 MB) should work.  After modification, the relevant line in
  • 'run-na-batch.bat' looks as following:
%JAVA_HOME%\bin\java -cp .;e1-server-batch.jar;%ADDTL_CP% -Xmx2048m com.pb.engageone.server.batch.na.runner.CommandLineRunner %*
  • 'run-bat' looks as following:
%JAVA_HOME%\bin\java -cp .;e1-server-batch.jar;%ADDTL_CP% -Xmx2048m com.pb.engageone.server.batch.Runner %*