Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 340327

Summary: MAT cannot read IBM (Portable Heap dumps) Heap dumps anymore
Product: [Tools] MAT Reporter: Patric Rufflar <patric>
Component: CoreAssignee: Project Inbox <mat.core-inbox>
Status: RESOLVED WORKSFORME QA Contact:
Severity: major    
Priority: P3 CC: andrew_johnson
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Patric Rufflar CLA 2011-03-17 11:28:24 EDT
Build Identifier: 1.0.1.201008091353

In MAT 0.8, I could successfully open IBM portable heap dumps.
When using MAT 1.0.1 this is not possible anymore while documention states that it's still possible.

org.eclipse.mat.SnapshotException: Error opening heap dump 'heapdump.20110317.132848.29737.phd'. Check the error log for further details.
at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.parse(SnapshotFactoryImpl.java:244)
at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.openSnapshot(SnapshotFactoryImpl.java:114)
at org.eclipse.mat.snapshot.SnapshotFactory.openSnapshot(SnapshotFactory.java:143)
at org.eclipse.mat.snapshot.SnapshotFactory.openSnapshot(SnapshotFactory.java:123)
at org.eclipse.mat.ui.snapshot.ParseHeapDumpJob.run(ParseHeapDumpJob.java:56)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Caused by: java.io.IOException: Not a HPROF heap dump
at org.eclipse.mat.hprof.AbstractParser.readVersion(AbstractParser.java:122)
at org.eclipse.mat.hprof.Pass1Parser.read(Pass1Parser.java:69)
at org.eclipse.mat.hprof.HprofIndexBuilder.fill(HprofIndexBuilder.java:65)
at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.parse(SnapshotFactoryImpl.java:203)
... 5 more


Reproducible: Always

Steps to Reproduce:
1. Try to open an IBM heap dump (.phd)
Comment 1 Andrew Johnson CLA 2011-03-17 12:19:17 EDT
Have you installed the IBM DTFJ Feature? This is not part of the MAT distribution from Eclipse.org but must be installed separately from IBM.

See here:

http://wiki.eclipse.org/index.php/MemoryAnalyzer#System_Dumps_and_Heap_Dumps_from_IBM_Virtual_Machines

If you check
Help > About Eclipse Memory Analyzer > Installation Details

then you should have an entry
Diagnostic Tool Framework for Java
if you have successfully installed the DTFJ feature.