Community
Participate
Working Groups
Currently if a bad file is passed to MAT in batch mode then the log is missing key data: !ENTRY org.eclipse.osgi 4 0 2010-05-13 18:57:50.920 !MESSAGE Application error !STACK 1 org.eclipse.mat.SnapshotException: Error opening heap dump 'javacore.20100128.172536.454990.0001.txt'. Check the error log for further details. at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.parse(SnapshotFactoryImpl.java:239) 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.internal.apps.ParseSnapshotApp.parse(ParseSnapshotApp.java:106) at org.eclipse.mat.internal.apps.ParseSnapshotApp.start(ParseSnapshotApp.java:95) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:618) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514) at org.eclipse.equinox.launcher.Main.run(Main.java:1311) at org.eclipse.equinox.launcher.Main.main(Main.java:1287) Caused by: org.eclipse.core.runtime.CoreException: Error opening heap dump 'javacore.20100128.172536.454990.0001.txt' at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.parse(SnapshotFactoryImpl.java:237) ... 17 more The problem is that the individual parser errors are held in a CoreException MultiStatus which is lost. In GUI mode the status is displayed.
Error message is now: Task: Processing DTFJ Image from file C:\v_drive\dumps\core.20090614.204433.20785.0001.dmp\heapdump.20090614.204433.20785.0002.phd.inbound.index9.log [ !ENTRY org.eclipse.mat.parser 4 0 2010-05-14 09:36:56.984 !MESSAGE Error opening heap dump 'heapdump.20090614.204433.20785.0002.phd.inbound.index9.log' !SUBENTRY 1 org.eclipse.mat.parser 4 0 2010-05-14 09:36:56.984 !MESSAGE Unable to read dump C:\v_drive\dumps\core.20090614.204433.20785.0001.dmp\heapdump.20090614.204433.20785.0002.phd.inbound.index9.log in DTFJ format DTFJ-J9 !STACK 0 java.io.IOException: Unable to read dump C:\v_drive\dumps\core.20090614.204433.20785.0001.dmp\heapdump.20090614.204433.20785.0002.phd.inbound.index9.log in DTFJ format DTFJ-J9 at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDynamicDTFJDump(DTFJIndexBuilder.java:7660) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getUncachedDump(DTFJIndexBuilder.java:7391) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDump(DTFJIndexBuilder.java:7289) at org.eclipse.mat.dtfj.DTFJIndexBuilder.fill(DTFJIndexBuilder.java:533) at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.parse(SnapshotFactoryImpl.java:203) 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.internal.apps.ParseSnapshotApp.parse(ParseSnapshotApp.java:115) at org.eclipse.mat.internal.apps.ParseSnapshotApp.start(ParseSnapshotApp.java:101) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:600) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447) at org.eclipse.equinox.launcher.Main.run(Main.java:1173) at org.eclipse.equinox.launcher.Main.main(Main.java:1148) Caused by: java.io.FileNotFoundException: C:\v_drive\dumps\core.20090614.204433.20785.0001.dmp\heapdump.20090614.204433.20785.0002.phd.inbound.index9.log.xml (The system cannot find the file specified.) at java.io.FileInputStream.<init>(FileInputStream.java:112) at com.ibm.dtfj.image.j9.ImageFactory.getImage(ImageFactory.java:79) at com.ibm.dtfj.image.j9.ImageFactory.getImage(ImageFactory.java:65) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDynamicDTFJDump(DTFJIndexBuilder.java:7616) ... 21 more !SUBENTRY 1 org.eclipse.mat.parser 4 0 2010-05-14 09:36:57.000 !MESSAGE Invalid HPROF file header. !STACK 0 java.io.IOException: Invalid HPROF file header. at org.eclipse.mat.hprof.AbstractParser.readVersion(AbstractParser.java:135) 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) 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.internal.apps.ParseSnapshotApp.parse(ParseSnapshotApp.java:115) at org.eclipse.mat.internal.apps.ParseSnapshotApp.start(ParseSnapshotApp.java:101) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:600) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447) at org.eclipse.equinox.launcher.Main.run(Main.java:1173) at org.eclipse.equinox.launcher.Main.main(Main.java:1148) !SUBENTRY 1 org.eclipse.mat.parser 4 0 2010-05-14 09:36:57.000 !MESSAGE Unable to read dump C:\v_drive\dumps\core.20090614.204433.20785.0001.dmp\heapdump.20090614.204433.20785.0002.phd.inbound.index9.log metafile null in DTFJ format DTFJ-PHD !STACK 0 java.io.IOException: Unable to read dump C:\v_drive\dumps\core.20090614.204433.20785.0001.dmp\heapdump.20090614.204433.20785.0002.phd.inbound.index9.log metafile null in DTFJ format DTFJ-PHD at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDynamicDTFJDump(DTFJIndexBuilder.java:7642) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getUncachedDump(DTFJIndexBuilder.java:7391) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDump(DTFJIndexBuilder.java:7289) at org.eclipse.mat.dtfj.DTFJIndexBuilder.fill(DTFJIndexBuilder.java:533) at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.parse(SnapshotFactoryImpl.java:203) 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.internal.apps.ParseSnapshotApp.parse(ParseSnapshotApp.java:115) at org.eclipse.mat.internal.apps.ParseSnapshotApp.start(ParseSnapshotApp.java:101) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:600) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447) at org.eclipse.equinox.launcher.Main.run(Main.java:1173) at org.eclipse.equinox.launcher.Main.main(Main.java:1148) Caused by: java.io.IOException: Problem opening dump C:\v_drive\dumps\core.20090614.204433.20785.0001.dmp\heapdump.20090614.204433.20785.0002.phd.inbound.index9.log metafile null at com.ibm.dtfj.phd.PHDImage.<init>(PHDImage.java:73) at com.ibm.dtfj.phd.PHDImage.<init>(PHDImage.java:44) at com.ibm.dtfj.phd.PHDImageFactory.getImage(PHDImageFactory.java:79) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDynamicDTFJDump(DTFJIndexBuilder.java:7616) ... 21 more Caused by: java.lang.Error: bad header in 'C:\v_drive\dumps\core.20090614.204433.20785.0001.dmp\heapdump.20090614.204433.20785.0002.phd.inbound.index9.log' : ?@gp#9h$g-??$z0OF HP =)%#4At1SD at com.ibm.jvm.ras.findroots.HeapdumpReader.<init>(HeapdumpReader.java:123) at com.ibm.dtfj.phd.PHDImage.<init>(PHDImage.java:56) ... 24 more !SUBENTRY 1 org.eclipse.mat.parser 4 0 2010-05-14 09:36:57.000 !MESSAGE Unable to read dump C:\v_drive\dumps\core.20090614.204433.20785.0001.dmp\heapdump.20090614.204433.20785.0002.phd.inbound.index9.log metafile null in DTFJ format DTFJ-SDFF !STACK 0 java.io.IOException: Unable to read dump C:\v_drive\dumps\core.20090614.204433.20785.0001.dmp\heapdump.20090614.204433.20785.0002.phd.inbound.index9.log metafile null in DTFJ format DTFJ-SDFF at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDynamicDTFJDump(DTFJIndexBuilder.java:7642) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getUncachedDump(DTFJIndexBuilder.java:7391) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDump(DTFJIndexBuilder.java:7289) at org.eclipse.mat.dtfj.DTFJIndexBuilder.fill(DTFJIndexBuilder.java:533) at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.parse(SnapshotFactoryImpl.java:203) 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.internal.apps.ParseSnapshotApp.parse(ParseSnapshotApp.java:115) at org.eclipse.mat.internal.apps.ParseSnapshotApp.start(ParseSnapshotApp.java:101) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:600) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447) at org.eclipse.equinox.launcher.Main.run(Main.java:1173) at org.eclipse.equinox.launcher.Main.main(Main.java:1148) Caused by: java.io.IOException: Currently can only handle SDFF files, which _MUST have a suffix of ".sdff"_ or svcdumps at com.ibm.dtfj.image.sov.ImageFactory.getImage(ImageFactory.java:101) at com.ibm.dtfj.image.sov.ImageFactory.getImage(ImageFactory.java:137) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDynamicDTFJDump(DTFJIndexBuilder.java:7616) ... 21 more Caused by: com.ibm.dtfj.sov.image.UnsupportedFormatException: C:\v_drive\dumps\core.20090614.204433.20785.0001.dmp\heapdump.20090614.204433.20785.0002.phd.inbound.index9.log does not appear to be an svcdump at com.ibm.dtfj.sov.svcReader.SvcImageImpl.<init>(SvcImageImpl.java:77) at com.ibm.dtfj.image.sov.ImageFactory.getImage(ImageFactory.java:94) ... 23 more Caused by: java.lang.Exception: bad magic: 09840e40 at com.ibm.jvm.svcdump.DumpReader.<init>(Dump.java:2684) at com.ibm.jvm.svcdump.Dump.<init>(Dump.java:449) at com.ibm.dtfj.sov.svcReader.SvcImageImpl.<init>(SvcImageImpl.java:74) ... 24 more !SUBENTRY 1 org.eclipse.mat.parser 4 0 2010-05-14 09:36:57.015 !MESSAGE Unable to read dump C:\v_drive\dumps\core.20090614.204433.20785.0001.dmp\heapdump.20090614.204433.20785.0002.phd.inbound.index9.log metafile null in DTFJ format DTFJ-Javacore !STACK 0 java.io.IOException: Unable to read dump C:\v_drive\dumps\core.20090614.204433.20785.0001.dmp\heapdump.20090614.204433.20785.0002.phd.inbound.index9.log metafile null in DTFJ format DTFJ-Javacore at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDynamicDTFJDump(DTFJIndexBuilder.java:7642) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getUncachedDump(DTFJIndexBuilder.java:7391) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDump(DTFJIndexBuilder.java:7289) at org.eclipse.mat.dtfj.DTFJIndexBuilder.fill(DTFJIndexBuilder.java:533) at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.parse(SnapshotFactoryImpl.java:203) 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.internal.apps.ParseSnapshotApp.parse(ParseSnapshotApp.java:115) at org.eclipse.mat.internal.apps.ParseSnapshotApp.start(ParseSnapshotApp.java:101) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:600) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447) at org.eclipse.equinox.launcher.Main.run(Main.java:1173) at org.eclipse.equinox.launcher.Main.main(Main.java:1148) Caused by: java.io.IOException: Error parsing at com.ibm.dtfj.javacore.parser.j9.JavaCoreReader.generateImage(JavaCoreReader.java:66) at com.ibm.dtfj.image.javacore.JCImageFactory.getImage(JCImageFactory.java:38) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDynamicDTFJDump(DTFJIndexBuilder.java:7616) ... 21 more Caused by: com.ibm.dtfj.javacore.parser.framework.parser.ParserException: Not a javacore file. First line: „@gp¡'©`#9h$õ-g-ž¥ÀŒå “Ñ€$z0‚B„‚OF HP?IèÆ at com.ibm.dtfj.javacore.parser.j9.ParserController.parse(ParserController.java:127) at com.ibm.dtfj.javacore.parser.j9.JavaCoreReader.generateImage(JavaCoreReader.java:64) ... 23 more ] !ENTRY org.eclipse.osgi 4 0 2010-05-14 09:36:57.015 !MESSAGE Application error !STACK 1 org.eclipse.mat.SnapshotException: Error opening heap dump 'heapdump.20090614.204433.20785.0002.phd.inbound.index9.log'. Check the error log for further details. at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.parse(SnapshotFactoryImpl.java:239) 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.internal.apps.ParseSnapshotApp.parse(ParseSnapshotApp.java:115) at org.eclipse.mat.internal.apps.ParseSnapshotApp.start(ParseSnapshotApp.java:101) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:600) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447) at org.eclipse.equinox.launcher.Main.run(Main.java:1173) at org.eclipse.equinox.launcher.Main.main(Main.java:1148) Caused by: org.eclipse.core.runtime.CoreException: Error opening heap dump 'heapdump.20090614.204433.20785.0002.phd.inbound.index9.log' at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.parse(SnapshotFactoryImpl.java:237) ... 17 more
The full list of reasons for a failure is now given. We now also log the IStatus.