This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 254145 - OutOfMemoryError: GC overhead limit exceeded
Summary: OutOfMemoryError: GC overhead limit exceeded
Status: RESOLVED FIXED
Alias: None
Product: debugger
Classification: Unclassified
Component: Java (show other bugs)
Version: 8.0
Hardware: All All
: P3 normal (vote)
Assignee: Martin Entlicher
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-08-05 08:30 UTC by Exceptions Reporter
Modified: 2015-08-13 01:19 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter: 218972


Attachments
stacktrace (2.49 KB, text/plain)
2015-08-05 08:30 UTC, Exceptions Reporter
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Exceptions Reporter 2015-08-05 08:30:48 UTC
This issue was reported manually by thurka.
It already has 1 duplicates 


Build: NetBeans IDE 8.0.2 (Build 201408251540)
VM: Java HotSpot(TM) 64-Bit Server VM, 25.5-b02, Java(TM) SE Runtime Environment, 1.8.0_05-b13
OS: Windows 7

User Comments:
GUEST: i was debugging a java web project on tomcat




Stacktrace: 
java.lang.OutOfMemoryError: GC overhead limit exceeded
   at java.util.Arrays.copyOfRange(Arrays.java:3658)
   at java.lang.String.<init>(String.java:201)
   at java.lang.String.substring(String.java:1956)
   at java.util.StringTokenizer.nextToken(StringTokenizer.java:352)
   at java.util.StringTokenizer.nextElement(StringTokenizer.java:407)
   at org.openide.util.Enumerations$FilEn.hasMoreElements(Enumerations.java:560)
Comment 1 Exceptions Reporter 2015-08-05 08:30:50 UTC
Created attachment 155181 [details]
stacktrace
Comment 2 Tomas Hurka 2015-08-05 08:38:30 UTC
Heap dump is full of javac instances. There are 12 instances of Symtab, 10 of them are held from "Debugger Context Scanning" request processor. It looks like 'scanningProcessor' is not needed and ParserManager.parse() can invoked directly.
Comment 3 Martin Entlicher 2015-08-11 14:40:06 UTC
There are several Source objects held by tasks, that are scheduled for parsing.
Instead of holding Source objects created by Source.create(fo), we can hold the FileObjects only and create them right before the parsing inside the RP task.
Comment 4 Martin Entlicher 2015-08-11 15:35:35 UTC
Fixed by changeset:   290712:1bcb8c08bc2f
http://hg.netbeans.org/core-main/rev/1bcb8c08bc2f
Comment 5 Quality Engineering 2015-08-13 01:19:26 UTC
Integrated into 'main-silver', will be available in build *201508130002* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)

Changeset: http://hg.netbeans.org/main-silver/rev/1bcb8c08bc2f
User: mentlicher@netbeans.org
Log: #254145: Create the Source object right before it's needed.