IBM Support

Installation of MCF v8.0 throws Out-of-Memory (OOM) errors while compiling source files at <INSTALL_DIR>/repository/bin.

Troubleshooting


Problem

Installation of MCF v8.0 throws Out-of-Memory (OOM) errors while compiling source files at /repository/bin.

Symptom

This is on MCF v8.0 installation. During installation, user sees OOM error and the installation stops. The user sees OOM when system tries to compile source files present under <INSTALL_DIR>/repository/bin. The error stack is as shown below.

Error Message

Trace snippet from PreInstallSI.log:
dbclassgen.build:

dbclassgen:

build:
    [javac] Compiling 581 source files to /usr/local/oms/8.0/Foundation/repository/bin
    [javac] Compiling 3010 source files to /usr/local/oms/8.0/Foundation/repository/bin


    [javac] The system is out of resources.
    [javac] Consult the following stack trace for details.
    [javac] java.lang.OutOfMemoryError: Java heap space
    [javac]  at com.sun.tools.javac.code.Scope$ImportScope.makeEntry(Scope.java:324)
    [javac]  at com.sun.tools.javac.code.Scope.enter(Scope.java:187)
    [javac]  at com.sun.tools.javac.comp.MemberEnter.importAll(MemberEnter.java:129)
    [javac]  at com.sun.tools.javac.comp.MemberEnter.visitImport(MemberEnter.java:533)
    [javac]  at com.sun.tools.javac.tree.Tree$Import.accept(Tree.java:397)
    [javac]  at com.sun.tools.javac.comp.MemberEnter.memberEnter(MemberEnter.java:383)
    [javac]  at com.sun.tools.javac.comp.MemberEnter.memberEnter(MemberEnter.java:395)
    [javac]  at com.sun.tools.javac.comp.MemberEnter.visitTopLevel(MemberEnter.java:507)
    [javac]  at com.sun.tools.javac.tree.Tree$TopLevel.accept(Tree.java:382)
    [javac]  at com.sun.tools.javac.comp.MemberEnter.memberEnter(MemberEnter.java:383)
    [javac]  at com.sun.tools.javac.comp.MemberEnter.complete(MemberEnter.java:778)
    [javac]  at com.sun.tools.javac.code.Symbol.complete(Symbol.java:355)
    [javac]  at com.sun.tools.javac.code.Symbol$ClassSymbol.complete(Symbol.java:612)
    [javac]  at com.sun.tools.javac.code.Symbol$ClassSymbol.flags(Symbol.java:550)
    [javac]  at com.sun.tools.javac.comp.Resolve.isAccessible(Resolve.java:118)
    [javac]  at com.sun.tools.javac.comp.Resolve.loadClass(Resolve.java:816)
    [javac]  at com.sun.tools.javac.comp.Resolve.findGlobalType(Resolve.java:874)
    [javac]  at com.sun.tools.javac.comp.Resolve.findType(Resolve.java:926)
    [javac]  at com.sun.tools.javac.comp.Resolve.findIdent(Resolve.java:959)

Resolving The Problem

Sterling Commerce QA tests any given Application version with the documented (or in some cases certified) stack. Therefore, it is very unlikely that an OOM occurs for the supported stack during installation.
The error seen above occurs when the system forks a new thread and assigns JVM memory. This is set to the value specified by maxMemoryToFork in entitydeployer.xml.
Though the supported JRE would be 64 bit shipped with the corresponding Application Server, during installation the document suggests the JDK version. The recommendations on installation are in the 'Utility Requirement' section of the Installation Guide. Follow strictly whatever it is recommended (sometimes we may recommend to use 32bit JDK for installation alone).
 
The user resolved the OOM errors after using proper 32bit JDK (recommended version).
 
Also, check through the version release notes under known issues. Sterling will document any issues faced during the QA cycle in the release notes.

[{"Product":{"code":"SS6PEW","label":"IBM Sterling Order Management"},"Business Unit":{"code":"BU048","label":"IBM Software"},"Component":"Not Applicable","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Historical Number

NFX7805

Product Synonym

[<p><b>]Escalation ID[</b><p>];108155;[<p><b>]Severity[</b><p>];Normal;[<p><b>]Type[</b><p>];NormalFix

Document Information

Modified date:
16 June 2018

UID

swg21560538