BSM error: java.lang.OutOfMemoryError: GC overhead limit exceeded

  • KM00624395
  • 28-Oct-2013
  • 18-Feb-2014

Summary

BSM java.lang.OutOfMemoryError: GC overhead limit exceeded

Error

BSM java.lang.OutOfMemoryError: GC overhead limit exceeded : what does this error mean and how to resolve it?

Cause

 Qn OutOfMemoryError occurs if too much time is being spent in garbage collection: if more than 98% of the total time is spent in garbage collection and less than 2% of the heap is recovered, an OutOfMemoryError will be thrown. This feature is designed to prevent applications from running for an extended period of time while making little or no progress because the heap is too small.

Fix

To resolve, the following options are available:
 
1) Increase heap size using Xmx switch e.g. -Xmx512m
 
2) Disable the error check using -XX:-UseGCOverheadLimit
   The third approach will only result in another kind of error messages – heap related java.lang.OutOfMemoryError.
 
In the corresponding *VM_PARARMS.INI change the line
 
 -Xms64m -Xmx1024m  
to
 
 -Xms64m -Xmx2048m 
 
save the file, and see if the process runs again out of memory. Increase the value if needed. Given values are only an example and may very for each process.