Build Error: "GC overhead limit exceeded"

Questions and answers regarding the use of eclipse environment as seen in Servoy Developer

Build Error: "GC overhead limit exceeded"

Postby rossent » Mon Aug 08, 2011 2:35 pm

Hi all,

I just installed Servoy 6.0 (final release) on a new laptop and every build operation which I do results in the following error:

Code: Select all
An internal error occurred during: "Building".
GC overhead limit exceeded


The attached screen shots are from the two dialog windows which popup when that error occurs.

The "out of memory" issue is quite strange, because my servoy.ini file is modified to to allocate 1024MB for the JVM heap. Here is what it looks like:

Code: Select all
-startup
plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.2.R36x_v20101222
--launcher.XXMaxPermSize
256m
-vmargs
-Xms256m
-Xmx1024m
-XX:MaxPermSize=256M


This is one of the "out of memory" errors in the log file which appears several times. There are "out of memory" errors in other places as well:

Code: Select all
!ENTRY org.eclipse.core.jobs 4 2 2011-08-08 14:36:30.865
!MESSAGE An internal error occurred during: "Building workspace".
!STACK 0
java.lang.OutOfMemoryError: GC overhead limit exceeded
   at org.antlr.runtime.tree.CommonTreeAdaptor.create(CommonTreeAdaptor.java:27)
   at org.antlr.runtime.tree.BaseTreeAdaptor.nil(BaseTreeAdaptor.java:7)
   at org.eclipse.dltk.javascript.parser.JSParser.primaryExpression(JSParser.java:1943)
   at org.eclipse.dltk.javascript.parser.JSParser.memberExpression(JSParser.java:3213)
   at org.eclipse.dltk.javascript.parser.JSParser.leftHandSideExpression(JSParser.java:3524)
   at org.eclipse.dltk.javascript.parser.JSParser.postfixExpression(JSParser.java:4380)
   at org.eclipse.dltk.javascript.parser.JSParser.unaryExpression(JSParser.java:4561)
   at org.eclipse.dltk.javascript.parser.JSParser.multiplicativeExpression(JSParser.java:4996)
   at org.eclipse.dltk.javascript.parser.JSParser.additiveExpression(JSParser.java:5091)
   at org.eclipse.dltk.javascript.parser.JSParser.shiftExpression(JSParser.java:5186)
   at org.eclipse.dltk.javascript.parser.JSParser.relationalExpression(JSParser.java:5281)
   at org.eclipse.dltk.javascript.parser.JSParser.equalityExpression(JSParser.java:5474)
   at org.eclipse.dltk.javascript.parser.JSParser.bitwiseANDExpression(JSParser.java:5664)
   at org.eclipse.dltk.javascript.parser.JSParser.bitwiseXORExpression(JSParser.java:5840)
   at org.eclipse.dltk.javascript.parser.JSParser.bitwiseORExpression(JSParser.java:6016)
   at org.eclipse.dltk.javascript.parser.JSParser.logicalANDExpression(JSParser.java:6192)
   at org.eclipse.dltk.javascript.parser.JSParser.logicalORExpression(JSParser.java:6368)
   at org.eclipse.dltk.javascript.parser.JSParser.conditionalExpression(JSParser.java:6548)
   at org.eclipse.dltk.javascript.parser.JSParser.assignmentExpression(JSParser.java:6731)
   at org.eclipse.dltk.javascript.parser.JSParser.expression(JSParser.java:6963)
   at org.eclipse.dltk.javascript.parser.JSParser.leftHandSideExpression(JSParser.java:3629)
   at org.eclipse.dltk.javascript.parser.JSParser.postfixExpression(JSParser.java:4380)
   at org.eclipse.dltk.javascript.parser.JSParser.unaryExpression(JSParser.java:4561)
   at org.eclipse.dltk.javascript.parser.JSParser.multiplicativeExpression(JSParser.java:4996)
   at org.eclipse.dltk.javascript.parser.JSParser.additiveExpression(JSParser.java:5091)
   at org.eclipse.dltk.javascript.parser.JSParser.shiftExpression(JSParser.java:5186)
   at org.eclipse.dltk.javascript.parser.JSParser.relationalExpression(JSParser.java:5281)
   at org.eclipse.dltk.javascript.parser.JSParser.equalityExpression(JSParser.java:5474)
   at org.eclipse.dltk.javascript.parser.JSParser.bitwiseANDExpression(JSParser.java:5664)
   at org.eclipse.dltk.javascript.parser.JSParser.bitwiseXORExpression(JSParser.java:5840)
   at org.eclipse.dltk.javascript.parser.JSParser.bitwiseORExpression(JSParser.java:6016)
   at org.eclipse.dltk.javascript.parser.JSParser.logicalANDExpression(JSParser.java:6192)


The build takes quite a long time before failing with the above error. The machine where this happens is a Windows 7 64-bit. The same identical configuration of the Servoy Developer and the same workspace builds fine on another Windows 7 64-bit machine. The difference between the two laptops is that the one which always fails has a quad-core i7 processor, SSD and fast RAM chips, where the older laptop is considerably slower. Both machines run the same OS. The Servoy 6 was "clean installed" on both laptops.

After poking around on the net, there was a reference here (http://www.petefreitag.com/item/746.cfm) to using the following GC setting:

Code: Select all
-XX:+UseConcMarkSweepGC


This seemed to help a bit (at least I am not getting the error every time), but still the build issues are quire persistent.

Has anyone else encountered similar issues and is there any solution to resolving them?

Any help on this is greatly appreciated.
Attachments
Build_error_OutOfMemory.PNG
Build_error_OutOfMemory.PNG (31.53 KiB) Viewed 6996 times
Build_error_GC_limit_exceeded.PNG
Build_error_GC_limit_exceeded.PNG (24.69 KiB) Viewed 6996 times
Rossen Totev
Argos Software
rossent
 
Posts: 288
Joined: Wed Dec 31, 2008 2:03 pm

Re: Build Error: "GC overhead limit exceeded"

Postby jcompagner » Mon Aug 08, 2011 4:34 pm

Maybe give it even more memory but that "GC overhead limit exceeded" can be a weird error.

you can also try: -XX:-UseGCOverheadLimit to disable this specific error..
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8833
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Re: Build Error: "GC overhead limit exceeded"

Postby rossent » Mon Aug 08, 2011 4:45 pm

jcompagner wrote:Maybe give it even more memory but that "GC overhead limit exceeded" can be a weird error.

you can also try: -XX:-UseGCOverheadLimit to disable this specific error..



How can I configure the Servoy Developer to use more than 1024MB of memory for the heap? (if I use for the -XmxNNNNm anything more than 1024, the Servoy Developer fails to start)
Rossen Totev
Argos Software
rossent
 
Posts: 288
Joined: Wed Dec 31, 2008 2:03 pm

Re: Build Error: "GC overhead limit exceeded"

Postby jcompagner » Mon Aug 08, 2011 5:29 pm

that should be possible just fine,
for a 32bit vm the max is around 1700MB or something like that
(depending on how much none heap you give it)

but 1200 should be fine, How much memory is really used? can you see that in the status bar? I that really close to 1GB?
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8833
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet


Return to Eclipse Environment

Who is online

Users browsing this forum: No registered users and 3 guests

cron