| Summary: | Latest DTFJ breaks build | ||
|---|---|---|---|
| Product: | [Tools] MAT | Reporter: | Andrew Johnson <andrew_johnson> |
| Component: | Core | Assignee: | Project Inbox <mat.core-inbox> |
| Status: | RESOLVED NOT_ECLIPSE | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | ||
| Version: | 1.1 | ||
| Target Milestone: | --- | ||
| Hardware: | All | ||
| OS: | All | ||
| Whiteboard: | |||
Another failure is with dump:
{TestSnapshots.IBM_JDK142_32BIT_HEAP_AND_JAVA, Stacks.FRAMES},
org.eclipse.mat.tests.snapshot.GeneralSnapshotTests.Stacks1[15]
java.lang.AssertionError:
at org.junit.Assert.fail(Assert.java:91)
at org.junit.Assert.assertTrue(Assert.java:43)
at org.junit.Assert.assertTrue(Assert.java:54)
at org.eclipse.mat.tests.snapshot.GeneralSnapshotTests.Stacks1(GeneralSnapshotTests.java:191)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
at org.junit.runners.Suite.runChild(Suite.java:128)
at org.junit.runners.Suite.runChild(Suite.java:24)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
at org.junit.runners.Suite.runChild(Suite.java:128)
at org.junit.runners.Suite.runChild(Suite.java:24)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
at org.codehaus.tycho.surefire.osgibooter.OsgiSurefireBooter.run(OsgiSurefireBooter.java:81)
at org.codehaus.tycho.surefire.osgibooter.HeadlessTestApplication.run(HeadlessTestApplication.java:11)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.equinox.internal.app.EclipseAppContainer.callMethodWithException(EclipseAppContainer.java:587)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:198)
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:369)
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:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
at org.eclipse.equinox.launcher.Main.run(Main.java:1407)
at org.eclipse.equinox.launcher.Main.main(Main.java:1383)
The cause of the failure is missing stack information from the PHD which used to be provided by the javacore.
For the moment I have disabled the failing tests with DTFJ >= 1.5 The problem is with DTFJ, not with Memory Analyzer. |
11 failures with the latest build which has used the DTFJ 1.5 from IBM: Test Result (11 failures / +11) * org.eclipse.mat.tests.snapshot.GeneralSnapshotTests.Stacks1[14] * org.eclipse.mat.tests.snapshot.GeneralSnapshotTests.TotalClasses[14] * org.eclipse.mat.tests.snapshot.GeneralSnapshotTests.TotalObjects[14] * org.eclipse.mat.tests.snapshot.GeneralSnapshotTests.TotalHeapSize[14] * org.eclipse.mat.tests.snapshot.GeneralSnapshotTests.ObjectSizes[14] * org.eclipse.mat.tests.snapshot.GeneralSnapshotTests.topComponents[14] * org.eclipse.mat.tests.snapshot.GeneralSnapshotTests.testMethods[14] * org.eclipse.mat.tests.snapshot.GeneralSnapshotTests.testClassLoaders[14] * org.eclipse.mat.tests.snapshot.GeneralSnapshotTests.reload1[14] * org.eclipse.mat.tests.snapshot.GeneralSnapshotTests.reload2[14] Error Message org.eclipse.mat.SnapshotException: Error opening heap dump 'javacore.20100209.165721.4484.txt'. Check the error log for further details. Stacktrace java.lang.RuntimeException: org.eclipse.mat.SnapshotException: Error opening heap dump 'javacore.20100209.165721.4484.txt'. Check the error log for further details. at org.eclipse.mat.tests.TestSnapshots.getSnapshot(TestSnapshots.java:141) at org.eclipse.mat.tests.TestSnapshots.getSnapshot(TestSnapshots.java:67) at org.eclipse.mat.tests.snapshot.GeneralSnapshotTests.<init>(GeneralSnapshotTests.java:106) at sun.reflect.GeneratedConstructorAccessor24.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at org.junit.runners.Parameterized$TestClassRunnerForParameters.createTest(Parameterized.java:86) at org.junit.runners.BlockJUnit4ClassRunner$1.runReflectiveCall(BlockJUnit4ClassRunner.java:251) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:248) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184) at org.junit.runners.ParentRunner.run(ParentRunner.java:236) at org.junit.runners.Suite.runChild(Suite.java:128) at org.junit.runners.Suite.runChild(Suite.java:24) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184) at org.junit.runners.ParentRunner.run(ParentRunner.java:236) at org.junit.runners.Suite.runChild(Suite.java:128) at org.junit.runners.Suite.runChild(Suite.java:24) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184) at org.junit.runners.ParentRunner.run(ParentRunner.java:236) at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127) at org.apache.maven.surefire.Surefire.run(Surefire.java:177) at org.codehaus.tycho.surefire.osgibooter.OsgiSurefireBooter.run(OsgiSurefireBooter.java:81) at org.codehaus.tycho.surefire.osgibooter.HeadlessTestApplication.run(HeadlessTestApplication.java:11) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.equinox.internal.app.EclipseAppContainer.callMethodWithException(EclipseAppContainer.java:587) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:198) 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:369) 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:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) at org.eclipse.equinox.launcher.Main.run(Main.java:1407) at org.eclipse.equinox.launcher.Main.main(Main.java:1383) Caused by: org.eclipse.mat.SnapshotException: Error opening heap dump 'javacore.20100209.165721.4484.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:145) at org.eclipse.mat.tests.TestSnapshots.getSnapshot(TestSnapshots.java:128) ... 57 more Caused by: org.eclipse.core.runtime.CoreException: Error opening heap dump 'javacore.20100209.165721.4484.txt' at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.parse(SnapshotFactoryImpl.java:237) ... 60 more Opening the dump manually with MAT with DTFJ 1.5 give this error in the log: Javacore files earlier than 1.5.0 are not supported (com.ibm.dtfj.javacore.parser.framework.parser.ParserException) com.ibm.dtfj.javacore.parser.framework.parser.ParserException: Javacore files earlier than 1.5.0 are not supported at com.ibm.dtfj.javacore.parser.j9.section.environment.EnvironmentSectionParser.parseVersion(EnvironmentSectionParser.java:71) at com.ibm.dtfj.javacore.parser.j9.section.environment.EnvironmentSectionParser.topLevelRule(EnvironmentSectionParser.java:44) at com.ibm.dtfj.javacore.parser.j9.SectionParser.readIntoDTFJ(SectionParser.java:50) at com.ibm.dtfj.javacore.parser.j9.ParserController.parse(ParserController.java:96) at com.ibm.dtfj.javacore.parser.j9.JavaCoreReader.generateImage(JavaCoreReader.java:76) at com.ibm.dtfj.image.javacore.JCImageFactory.getImage(JCImageFactory.java:38) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDynamicDTFJDump(DTFJIndexBuilder.java:8049) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getUncachedDump(DTFJIndexBuilder.java:7822) at org.eclipse.mat.dtfj.DTFJIndexBuilder.getDump(DTFJIndexBuilder.java:7635) at org.eclipse.mat.dtfj.DTFJIndexBuilder.fill(DTFJIndexBuilder.java:573) 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:145) at org.eclipse.mat.ui.snapshot.ParseHeapDumpJob.run(ParseHeapDumpJob.java:83) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) Also when opening heapdump.20100209.165721.4484.phd with javacore.20100209.165721.4484.txt with the new DTFJ 1.5 the class loader summary is Class Name | Defined Classes | No. of Instances -------------------------------------------------------------------------------- <system class loader> | 347 | 4,738 sun.misc.Launcher$ExtClassLoader @ 0xbadfd8| 1 | 0 '- java.net.URLClassLoader | | 0 sun.misc.Launcher$AppClassLoader @ 0xbadf58| 0 | 0 Total: 3 entries | 348 | 4,738 -------------------------------------------------------------------------------- but with DTFJ 1.4 it is Class Name | Defined Classes | No. of Instances -------------------------------------------------------------------------------------------------- <system class loader> | 332 | 4,723 sun.misc.Launcher$AppClassLoader @ 0xbadf58 | 16 | 15 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData | | 1 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData$A| | 1 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData$B| | 1 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData$C| | 1 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData$D| | 1 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData$E| | 1 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData$F| | 1 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData$G| | 1 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData$H| | 1 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData$I| | 1 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData$J| | 1 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData$K| | 1 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData$L| | 1 |- org.eclipse.mat.tests.CreateSampleDump$DominatorTestData$R| | 1 |- org.eclipse.mat.tests.CreateSampleDump$ReferenceTestData | | 1 |- org.eclipse.mat.tests.CreateSampleDump | | 0 '- Total: 16 entries | | sun.misc.Launcher$ExtClassLoader @ 0xbadfd8 | 0 | 0 Total: 3 entries | 348 | 4,738 --------------------------------------------------------------------------------------------------