Tomcat memory issue

Tomcat memory issue

Introduction

This article explains how to resolve memory-related task failures in 360Suite when the Tomcat Java Virtual Machine runs out of memory or exceeds garbage collection overhead limits.

Environment

  • Product: 360Suite
  • Operating systems: Windows or Linux

Symptoms

  • A 360Suite task fails with a memory-related error.
  • The error appears in the task logs or Tomcat logs.

Error Message

Warning
java.lang.OutOfMemoryError: GC overhead limit exceeded

Cause

The garbage collector is spending too much time attempting to reclaim memory without successfully freeing enough space. This indicates that the maximum heap size allocated to Tomcat is insufficient for the task.

Resolution

Increase the maximum memory (heap size) allocated to Tomcat. The specific adjustment depends on your server's available memory and the size of the dataset being processed.

Windows environment 

This has to be done in the Tomcat Configuration tool. 

This tool can be found in the 360Suite installation folder (next to the apache-tomcat folder) if you are using the tomcat we deliver with 360Suite.
In other cases (third-party tomcat or BOBJ tomcat), this tool is also available because it is installed alongside the tomcat itself. It should be accessible via the Windows start menu.
  1. Open the Tomcat Configuration as Administrator
  2. Go to the Java tab
  3. In the Maximum memory pool section you can change the maximum amount of memory allocated to the tomcat (this adjustment must be done according to the server memory capacity)
  4. Click “apply” then restart the tomcat 


Linux environment

On a Linux server, the memory settings for Apache Tomcat can be added or modified in the file where the environment variables are configured.

Typically, in <apache-tomcat>/bin/setenv.sh or another “.sh” file (in the bin directory) that is used by default to start the tomcat. Several parameters for the memory values can be set here but the most important is -Xmx that defines the maximum memory size. It can be set with either a megabytes value (m) or a gigabytes value (g)

Example : 
Quote
CATALINA_OPTS="-Xms4g -Xmx12g -Xss-256k"

Quote
JAVA_OPTS="$JAVA_OPTS -XX:MaxMetaspaceSize=1024m"

For more details about this Linux Tomcat configuration, please refer to the offical Apache Tomcat documentation.
A Tomcat restart is necessary after this change.
    • Related Articles

    • Change Tomcat after 2025.1 upgrade

      Context To prepare for BI 2025 moving away from Java 8, we migrated from Java 8 to Java 21. This migration impacts everyone doing update from previous version, as the version used for Tomcat is not compatible anymore, as Java 21 requires a Tomcat 10 ...
    • How to configure 360Suite's Tomcat with HTTPS

      ? Purpose This article provides high‑level guidance for enabling HTTPS/SSL on Apache Tomcat 10.1.x. Because Tomcat is a third‑party application server, SSL configuration is outside the scope of our product support. The content below summarizes and ...
    • 360Suite database configuration is not set when restarting Tomcat server

      Symptoms On application startup, a warning popup appears In the Administration console, the database configuration is empty even though is was setup previously Environment 360Suite Web Platform Linux server (all) Additional symptoms : tomcat logs In ...
    • Does Apache Tomcat belongs to Product Support scope?

      Context Does Apache Tomcat belong to Product Support scope? Answer Apache Tomcat, a free open-source third-party Web application server, is bundled with 360Suite (a Wiiisdom product) for convenience of use, but is not considered part of the ...
    • Bind Content Comparison Task : GC overhead limit exceeded

      Introduction This article explains how to resolve a GC overhead limit exceeded memory error that occurs during a 360Bind comparison task. Environment Product: 360Suite Product version: all versions Database: all Symptoms A 360Bind comparison task ...