Loading...

Knowledge Center


Error: java.lang.OutOfMemoryError (in the Orion.log) or memory allocated to the ePolicy Orchestrator Application Server needs to be increased
Technical Articles ID:   KB71516
Last Modified:  9/25/2019
Rated:


Environment

McAfee ePolicy Orchestrator (ePO) 5.x

Problem

The Orion.log contains the following error:

Error: java.lang.OutOfMemoryError

The following issues can occur when the above error displays in the Orion.log:
  • ePO console is unresponsive or slow.
  • Unable to process DataChannel requests.
  • Cannot execute ePO server tasks until services are restarted.
  • ePO console default dashboard is not displaying or loading.
 

Cause

The error GC overhead limit exceeded occurs if too much time is spent in the garbage collection (more than 98% of the total time in garbage collection) and if less than 2% of the heap is recovered, an OutOfMemoryError will be sent. This is a feature built into the Java virtual machine designed to prevent applications from running for an extended period of time while making little or no progress because the heap is too small.

The error java.lang.OutOfMemoryError: Java heap space most likely occurs for the following reasons:
  • The Java application has a memory leak. (In this case, an extension that was loaded is leaking memory.)
  • The Java application (Tomcat/ePO) needs more memory than the default to run properly. Some extensions, such as Endpoint Encryption for PC (EEPC) and Host Intrusion Prevention (Host IPS), may require additional memory in the heap to run correctly and faster.

Solution

If the Workaround provided below (increasing the Java maximum memory) does not resolve the issue, a Java heap dump from the ePO server is required for escalations to Technical Support. For instructions to generate a Java heap dump when ePO encounters an OutOfMemory error in ePO Orion.log on the ePO Application Server, see Solution 1 of KB73309.

To contact Technical Support, log on to the ServicePortal and go to the Create a Service Request page at https://support.mcafee.com/ServicePortal/faces/serviceRequests/createSR:
  • If you are a registered user, type your User Id and Password, and then click Log In.
  • If you are not a registered user, click Register and complete the required fields. Your password and logon instructions will be emailed to you.

Workaround

Increase the Maximum Java Memory Pool size in the registry (this can resolve both Java heap and PermGen issues) on the ePO Application Server:

CAUTION: This article contains information about opening or modifying the registry.
  • The following information is intended for System Administrators. Registry modifications are irreversible and could cause system failure if done incorrectly.
  • Before proceeding, Technical Support strongly recommends that you back up your registry and understand the restore process. For more information, see: http://support.microsoft.com/kb/256986.
  • Do not run a REG file that is not confirmed to be a genuine registry import file.
  1. Press Windows+R, type regedit, and click OK.
  2. Navigate to and expand the registry key below:
     
    NOTE: The registry key will vary depending on the version of ePO that is installed. For example, for ePO 5.3.1 the registry key will be at a location similar to: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\MCAFEETOMCATSRV530\Parameters\Java.

    32-bit servers:
    [HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\MCAFEETOMCATSRV200\Parameters\Java]

    64-bit servers:
    [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\MCAFEETOMCATSRV250\Parameters\Java]
     
  3. Select the Java sub-key.
  4. Increase the JvmMx parameter value.
     
    ePO 5.x utilizes a 64-bit Java Runtime Environment. This means that you can set the JvmMx parameter to a much larger value than in ePO 4.x. Set JvmMx to a value equal to at least 50% of the available system memory. For environments with larger numbers of endpoints, the recommended minimum of 8GB for ePO 5.x may not be enough. Ensure that sufficient memory is available for other resident processes such as an Agent Handler or Event Parser. The operating system itself should also be allowed approximately 10% of the available memory.

    NOTE: By default the JvmMx parameter accepts an integer value that represents the number of megabytes. For example, to set this parameter to 16GB, the value to enter would be 16384.
 

Rate this document

Languages:

This article is available in the following languages:

English United States
Japanese

Glossary of Technical Terms


 Highlight Glossary Terms

Please take a moment to browse our Glossary of Technical Terms.