GC Overhead limit exceeded
I get several GC overhead limit exceeded errors after my Eclipse has been churning away for a while at analyzing a small example file using the WebDSL syntax I converted from SDF2 to SDF3 using the builder. I haven’t been able to reproduce this in a small project, but I believe this is caused by at least a combination of: (1) missing RTG rules (for example when used with the
ast
syntax), (2) the RTG contains only rules for code completion generated by SDF3, (3) there is ato-outline-label
rewrite rule generated inOutliner.generated.str
.For example, this partial syntax:
Definition = Function Function.Function = <function <ID> ( <{FormalArg ","}*> ) <FunctionReturn> <Block>> FunctionReturn = <> {ast("SimpleSort(\"Void\")")} FunctionReturn = <: <Type>> {ast("<1>")} FormalArg.Arg = <<ID> : <Type>> Block.Block = <{ <Property*> }>
results in these RTG rules for
Function
:Function -> COMPLETION-Function(CONTENTCOMPLETE)
and this outliner strategy:
to-outline-label = ?Function(<id>, _, _, _)
This compiles successfully, but when I try to analyze this code:
function foo(i:Int,b:Bool):String{ var x := 2 + null; }
I get these errors, after which Eclipse crashes:
!ENTRY org.strategoxt.imp.runtime 4 0 2014-08-05 11:50:06.977 !MESSAGE Could not create error marker: Constructor Function/4 not declared !STACK 0 java.io.FileNotFoundException: L/WebDSL/editor/WebDSL-Outliner.generated.str at org.strategoxt.imp.runtime.parser.ast.AstMessageHandler.addMarker(AstMessageHandler.java:119) at org.strategoxt.imp.runtime.parser.ast.AstMessageHandler.addMarker(AstMessageHandler.java:109) at org.strategoxt.imp.runtime.parser.ast.AstMessageHandler.addMarker(AstMessageHandler.java:89) at org.strategoxt.imp.runtime.services.StrategoObserver.feedbackToMarkers(StrategoObserver.java:558) at org.strategoxt.imp.runtime.services.StrategoObserver.updateMarkers(StrategoObserver.java:499) at org.strategoxt.imp.runtime.services.StrategoObserver.presentToUser(StrategoObserver.java:481) at org.strategoxt.imp.runtime.services.StrategoObserver.update(StrategoObserver.java:422) at org.strategoxt.imp.runtime.services.StrategoObserverBackgroundUpdateJob.analyzeFile(StrategoObserverBackgroundUpdateJob.java:118) at org.strategoxt.imp.runtime.services.StrategoObserverBackgroundUpdateJob.analyze(StrategoObserverBackgroundUpdateJob.java:64) at org.strategoxt.imp.runtime.services.StrategoAnalysisQueue$UpdateJob.run(StrategoAnalysisQueue.java:82) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) !ENTRY org.strategoxt.imp.runtime 4 0 2014-08-05 11:58:35.162 !MESSAGE Error running scheduled analysis !STACK 0 java.lang.OutOfMemoryError: GC overhead limit exceeded !ENTRY org.eclipse.imp.runtime 4 0 2014-08-05 11:59:15.282 !MESSAGE Universal Editor Error !STACK 0 java.lang.OutOfMemoryError: GC overhead limit exceeded !ENTRY org.strategoxt.imp.runtime 4 0 2014-08-05 11:59:36.388 !MESSAGE Error running scheduled analysis !STACK 0 java.lang.OutOfMemoryError: GC overhead limit exceeded
It might be that the
Submitted by D. Pelsmaeker on 5 August 2014 at 13:38Constructor Function/4 not declared
error is not related to the crash, as that error is to be expected when usingast
syntax without defining the actual signatures elsewhere.
Log in to post comments