IBM Support

Importing custom extensions into a developer toolkit environment results in java/lang/OutOfMemoryError (OOM)

Troubleshooting


Problem

Running sci_ant.sh results in a java/lang/OutOfMemoryError.

./sci_ant.sh -f ../devtoolkit/devtoolkit_extensions.xml import -Dpackage=extension_archive_path

Error stack trace:
defaulting to build.sysclasspath=last; set to false for repeatable builds
[exec] [ java ] [ javac ] /home/devtoolkit_docker/runtime/properties/entityDeployer.xml:778: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
[exec] [ java ] [ javac ] Compiling 4059 source files to /home/devtoolkit_docker/runtime/repository/entitybuild/classes
[exec] [ java ] [ javac ] JVMDUMP055I Processing dump event "systhrow", detail "java/lang/OutOfMemoryError", exception "Java heap space" at 2025/03/18 06:30:38 - please wait.
[exec] [ java ] [ javac ] JVMDUMP032I JVM requested System dump using '/home/devtoolkit_docker/runtime/repository/entitybuild/core.20250318.063038.2488692.0001.dmp' in response to an event
[exec] [ java ] [ javac ] JVMPORT030W /proc/sys/kernel/core_pattern setting "|/usr/lib/systemd/systemd-coredump %P %u %g %s %t %c %h" specifies that the core dump is to be piped to an external program. Attempting to rename either core or core.2488951. Review the manual for the external program to find where the core dump is written and ensure the program does not truncate it.
[exec] [ java ] [ javac ]
[exec] [ java ] [ javac ] JVMPORT049I The core file created by child process with pid = 2488951 was not found. Review the documentation for the /proc/sys/kernel/core_pattern program "|/usr/lib/systemd/systemd-coredump %P %u %g %s %t %c %h" to find where the core file is written and ensure that program does not truncate it.
[exec] [ java ] [ javac ]
[exec] [ java ] [ javac ] JVMDUMP012E Error in System dump: /home/devtoolkit_docker/runtime/repository/entitybuild/core.20250318.063038.2488692.0001.dmp

Cause

As per the Whats' New section' in Release 25.3.1, the JDK Stack is upgraded to the latest IBM JDK8 - 8.0.8.35 (based on 1.8.0_431). The error indicates that the out of memory happens while compiling the entity build classes using the latest JAVA Stack. As deployer rebuilds the jar, it takes more memory to recompile and rebuild the jars.

Diagnosing The Problem

Check the log on which entity target system is throwing Out of Memory. Go to entityDeployer.xml file which is in <INSTAL_DIR>/properties folder and browse to the target where Out Of Memory is. Review the memory arguments and check the value associated with it.

Resolving The Problem

(1) Change the value of ADDITIONAL_ANT_COMPILER_TASK_ARGS in sandbox.cfg file:

cd ~
cd devtoolkit_docker/runtime/properties vi sandbox.cfg

(2) Locate the property ADDITIONAL_ANT_COMPILER_TASK_ARGS and allocate at least 4GB to 8GB depending on your JAR file contents:

ADDITIONAL_ANT_COMPILER_TASK_ARGS=-J-Xms256m -J-Xmx8192m

(3) Go to runtime/bin folder and run the setupfiles.sh file:

cd ~
cd devtoolkit_docker/runtime/bin
./setupfiles.sh

(4) Run the sci_ant.sh command review if there is more memory required. If yes, follow steps (1) to (3) again with appropriate value for the property: ADDITIONAL_ANT_COMPILER_TASK_ARGS

Document Location

Worldwide

[{"Type":"MASTER","Line of Business":{"code":"LOB77","label":"Automation Platform"},"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SS6PEW","label":"IBM Sterling Order Management"},"ARM Category":[{"code":"a8m0z000000cy0AAAQ","label":"Install and Deploy"}],"ARM Case Number":"TS018787408","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"}]

Product Synonym

oms; sterling order management;

Document Information

Modified date:
15 April 2025

UID

ibm17228727