JDK-6413389 : jhat throws OOM while parsing large heapdumps
Type:Bug
Component:core-svc
Sub-Component:tools
Affected Version:6
Priority:P3
Status:Resolved
Resolution:Fixed
OS:generic
CPU:generic
Submitted:2006-04-14
Updated:2010-08-24
Resolved:2006-04-29
The Version table provides details related to the release that this issue/RFE will be addressed.
Unresolved : Release in which this issue/RFE will be addressed. Resolved: Release in which this issue/RFE has been resolved. Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.
jhat throws OutOfMemoryError while parsing large heap dumps. It is important to reduce heap memory requirement of jhat as much as possible.
Comments
SUGGESTED FIX
Webrev: http://bongo.india.sun.com/jhat/6413389/webrev/
Also refer to the attachment "webrev.tar"
24-04-2006
EVALUATION
Using nio filemapping the heap dump may be memory mapped. In addition, sizes of all objects mirroring heap objects may be reduced by reading object content lazily. Objects can just have offset in the memory mapped buffer for content. Also, many fields such as stacktrace etc. can be moved out of JavaHeapObject.java to a side data structure in Snapshot.java (Maps) -- so that not every object needs storage (even for a null valued field)