JBOSS stops working
search cancel

JBOSS stops working

book

Article ID: 206548

calendar_today

Updated On:

Products

CA Identity Manager

Issue/Introduction

After restarting JBOSS it stops and records an error in the CA Identity Manager Application Server Log (server.log) file.

 

Exception Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded

 

Environment

Release : 14.3

Component : IdentityMinder(Identity Manager)

Cause

This is not an Identity Manager issue. 

 

The GC error relates to Java Garbage Collection.  Java garbage collection (GC) is the process by which Java programs perform automatic memory management. Java programs compile to bytecode that can be run on a Java Virtual Machine, or JVM for short. When Java programs run on the JVM, objects are created on the heap, which is a portion of memory dedicated to the program. Eventually, some objects will no longer be needed. The garbage collector finds these unused objects and deletes them to free up memory.

 

The " java.lang.OutOfMemoryError: GC overhead limit exceeded" error occurs when the JVM spent too much time performing Garbage Collection and was only able to reclaim very little heap space.

 

 

Resolution

JVM Can run on low amounts of memory, however, the actual amount of memory required is dependent upon the application being hosted in the JVM (in this case CA Identity Manager).  If there is not enough memory allocated to JVM, the GC process struggles to reclaim enough free space, and eventually, resources are depleted.

In this example, memory allocation appears to be very low (1 GB).  

15:00:42,605 DEBUG [org.jboss.as.config] (MSC service thread 1-2) VM Arguments: -Dprogram.name=standalone.bat -Xms1G -Xmx1G -XX:MaxPermSize=256M -Djava.net.preferIPv4Stack=true -Djboss.modules.policy-permissions=true -Djboss.modules.system.pkgs=org.jboss.byteman -verbose:gc -Xloggc:E:\jboss-eap-7.2\standalone\log\gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=3M -XX:-TraceClassUnloading -Dorg.jboss.boot.log.file=E:\jboss-eap-7.2\standalone\log\server.log -Dlogging.configuration=file:E:\jboss-eap-7.2\standalone\configuration/logging.properties

 

On a 16 GB Windows system, you should be able to allocate at least 8 GB to the JVM without any issues. 8Gb is the expected minimum memory allocation for the JVM hosting CA Identity Manager 14.3 on-premise in a production environment.

Additional Information

Performance tuning the application server is something that should be managed by the customers' Application server administrator.