emt4j
emt4j copied to clipboard
Possible Memory Leak?
Using emt4j:process-test-classes of the Maven Plugin on a particularly large project (~700MB) with over 30 gigs of memory allocated
Failed to analyze classes
java.lang.RuntimeException: Failed to convert <com.web.viewmodels.matrix.MatrixViewModel: java.util.List getAllListDisplayedDateWithoutCurrentFilter(com.web.viewmodels.matrix.utils.MatrixFilter)>
at soot.asm.AsmMethodSource.getBody(AsmMethodSource.java:2250)
at soot.SootMethod.retrieveActiveBody(SootMethod.java:446)
at org.eclipse.emt4j.common.staticanalysis.impl.CLDRDateFormatAnalyzer.doAnalyze(CLDRDateFormatAnalyzer.java:40)
at org.eclipse.emt4j.common.staticanalysis.impl.BaseAnalyzer.analyze(BaseAnalyzer.java:45)
at org.eclipse.emt4j.common.staticanalysis.impl.CLDRDateFormatAnalyzer.analyze(CLDRDateFormatAnalyzer.java:33)
at org.eclipse.emt4j.common.staticanalysis.InvokerImpl.invoke(InvokerImpl.java:117)
at org.eclipse.emt4j.common.staticanalysis.StaticAnalysisEntry.analyze(StaticAnalysisEntry.java:75)
at org.eclipse.emt4j.common.rule.impl.WholeClassRule.check(WholeClassRule.java:68)
at org.eclipse.emt4j.common.rule.ExecutableRule.execute(ExecutableRule.java:70)
at org.eclipse.emt4j.analysis.AnalysisExecutor.lambda$null$1(AnalysisExecutor.java:99)
at org.eclipse.emt4j.analysis.analyzer.ClassAnalyzer.processClass(ClassAnalyzer.java:65)
at org.eclipse.emt4j.analysis.analyzer.ClassAnalyzer.analyze(ClassAnalyzer.java:42)
at org.eclipse.emt4j.analysis.analyzer.DependencyAnalyzer.iterateDo(DependencyAnalyzer.java:54)
at org.eclipse.emt4j.analysis.source.DirectorySource.parse(DirectorySource.java:48)
at org.eclipse.emt4j.analysis.AnalysisExecutor.lambda$execute$2(AnalysisExecutor.java:91)
at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1384)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
at java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:290)
at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinPool$WorkQueue.execLocalTasks(ForkJoinPool.java:1040)
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1058)
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:175)
Caused by: java.lang.OutOfMemoryError: Java heap space
at java.util.HashMap.resize(HashMap.java:705)
at java.util.HashMap.putVal(HashMap.java:664)
at java.util.HashMap.put(HashMap.java:613)
at java.util.HashSet.add(HashSet.java:220)
at soot.asm.AsmMethodSource.addEdges(AsmMethodSource.java:1855)
at soot.asm.AsmMethodSource.convert(AsmMethodSource.java:1954)
at soot.asm.AsmMethodSource.getBody(AsmMethodSource.java:2248)
at soot.SootMethod.retrieveActiveBody(SootMethod.java:446)
at org.eclipse.emt4j.common.staticanalysis.impl.CLDRDateFormatAnalyzer.doAnalyze(CLDRDateFormatAnalyzer.java:40)
at org.eclipse.emt4j.common.staticanalysis.impl.BaseAnalyzer.analyze(BaseAnalyzer.java:45)
at org.eclipse.emt4j.common.staticanalysis.impl.CLDRDateFormatAnalyzer.analyze(CLDRDateFormatAnalyzer.java:33)
at org.eclipse.emt4j.common.staticanalysis.InvokerImpl.invoke(InvokerImpl.java:117)
at org.eclipse.emt4j.common.staticanalysis.StaticAnalysisEntry.analyze(StaticAnalysisEntry.java:75)
at org.eclipse.emt4j.common.rule.impl.WholeClassRule.check(WholeClassRule.java:68)
at org.eclipse.emt4j.common.rule.ExecutableRule.execute(ExecutableRule.java:70)
at org.eclipse.emt4j.analysis.AnalysisExecutor.lambda$null$1(AnalysisExecutor.java:99)
at org.eclipse.emt4j.analysis.AnalysisExecutor$$Lambda$46/1579936920.accept(Unknown Source)
at org.eclipse.emt4j.analysis.analyzer.ClassAnalyzer.processClass(ClassAnalyzer.java:65)
at org.eclipse.emt4j.analysis.analyzer.ClassAnalyzer.analyze(ClassAnalyzer.java:42)
at org.eclipse.emt4j.analysis.analyzer.DependencyAnalyzer.iterateDo(DependencyAnalyzer.java:54)
at org.eclipse.emt4j.analysis.source.DirectorySource.parse(DirectorySource.java:48)
at org.eclipse.emt4j.analysis.AnalysisExecutor.lambda$execute$2(AnalysisExecutor.java:91)
at org.eclipse.emt4j.analysis.AnalysisExecutor$$Lambda$45/1649527633.accept(Unknown Source)
at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1384)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
at java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:290)
at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinPool$WorkQueue.execLocalTasks(ForkJoinPool.java:1040)
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1058)
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
using openjdk 1.8 and emt4j 0.8.0 from java 8 to 17