OutOfMemoryError - GC overhead limit exceeded
Someone asked me recently about the following exception on their ColdFusion server:
java.lang.OutOfMemoryError: GC overhead limit exceeded
This exception is thrown by the garbage collector (in the underlying jvm, it's not specific to ColdFusion), when it is spending way too much time collecting garbage. This error essentially means that you need to add more memory, or reconfigure your garbage collection arguments. You can suppress this error by adding -XX:-UseGCOverheadLimit to your JVM startup arguments.
Here's what Sun has to say about it:
The parallel / concurrent collector will throw anOutOfMemoryErrorif 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. If necessary, this feature can be disabled by adding the option-XX:-UseGCOverheadLimitto the command line.
Tweet
add to del.icio.us
| Tags: java, jvm, coldfusion, garbage, collector, tuning, performance
Related Entries
- Adobe Says Go Ahead and Upgrade your ColdFusion JVM - October 24, 2012
- Java Performance Tuning Guide - December 7, 2005
- ColdFusion Garbage - June 3, 2004
- Tuning Garbage Collection - June 3, 2004
- Enabling Unlimited Strength Cryptography in ColdFusion - March 8, 2012
Trackbacks
Comments
I have also used other tweaks before including playing with the young/new/old ratios. Before going there profiling GC memory using open source tools such as GCViewer has been helpfull.
-Cheers
This post I found has more details http://www.numtopia.com/terry/blog/archives/2007/06/coldfusion_8_monitoring_heisenberg_errors.cfm the solution in this post is: "In the CF administrator: Go to Server Monitoring Launch Server Monitor Up at the top there should be 3 options that say Stop Monitoring, Stop Profiling, Stop Memory Tracking. Turn them off. However, these are turned off by default ...."
http://www.oracle.com/technetwork/java/javase/gc-tuning-6-140523.html#par_gc.oom
Argh! What?! I'm running into more and more issues like this and I'm really becoming disappointed with Adobe. It appears they have two versions of CF now -- developer and Enterprise because Standard is all but useless in a production environment.
Post a Comment
Recent Entries
- Writing Secure CFML cfObjective 2013 Slides
- Upgrading to Java 7 on Linux
- J2EE Sessions in CF10 Uses Secure Cookies
- Learn about ColdFusion Security at cfObjective 2013
- Session Loss and Session Fixation in ColdFusion
- FuseGuard 2.3 Released
- CKEditor Spell Checker Plugin
- Adobe Says Go Ahead and Upgrade your ColdFusion JVM





