JDK-8203189 : [Graal] org.graalvm.compiler.jtt.except tests fail due to ArrayIndexOutOfBoundsException message change
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 11
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2018-05-15
  • Updated: 2018-05-16
  • Resolved: 2018-05-16
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.

To download the current JDK release, click here.
JDK 11
11Fixed
Related Reports
Duplicate :  
Relates :  
Description
17 org.graalvm.compiler.jtt.except tests fail with latest jdk/jdk bits.
Example of org.graalvm.compiler.jtt.except.BC_aaload1 failure:

org.graalvm.compiler.jtt.except.BC_aaload1 started (1 of 1)
  run0: Passed
  run1: FAILED
run1(org.graalvm.compiler.jtt.except.BC_aaload1)
org.junit.ComparisonFailure: Exception message expected:<[Index -1 out of bounds for length 3]> but was:<[-1]>
        at org.junit.Assert.assertEquals(Assert.java:115)
        at org.graalvm.compiler.core.test.GraalCompilerTest.assertEquals(GraalCompilerTest.java:876)
        at org.graalvm.compiler.core.test.GraalCompilerTest.testAgainstExpected(GraalCompilerTest.java:855)
        at org.graalvm.compiler.jtt.JTTTest.runTest(JTTTest.java:109)
        at org.graalvm.compiler.jtt.JTTTest.runTest(JTTTest.java:92)
        at org.graalvm.compiler.jtt.JTTTest.runTest(JTTTest.java:88)
        at org.graalvm.compiler.jtt.except.BC_aaload1.run1(BC_aaload1.java:51)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
        at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
        at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
        at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at org.junit.runners.Suite.runChild(Suite.java:128)
        at org.junit.runners.Suite.runChild(Suite.java:27)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at org.junit.runner.JUnitCore.run(JUnitCore.java:137)


Full list of failed tests:

org.graalvm.compiler.jtt.except.BC_aaload1
org.graalvm.compiler.jtt.except.BC_aastore0
org.graalvm.compiler.jtt.except.BC_aastore1
org.graalvm.compiler.jtt.except.BC_baload
org.graalvm.compiler.jtt.except.BC_bastore
org.graalvm.compiler.jtt.except.BC_caload
org.graalvm.compiler.jtt.except.BC_castore
org.graalvm.compiler.jtt.except.BC_daload
org.graalvm.compiler.jtt.except.BC_dastore
org.graalvm.compiler.jtt.except.BC_faload
org.graalvm.compiler.jtt.except.BC_fastore
org.graalvm.compiler.jtt.except.BC_iaload
org.graalvm.compiler.jtt.except.BC_iastore
org.graalvm.compiler.jtt.except.BC_laload
org.graalvm.compiler.jtt.except.BC_lastore
org.graalvm.compiler.jtt.except.BC_saload
org.graalvm.compiler.jtt.except.BC_sastore

org.graalvm.compiler.lir.jtt.StackMoveTest
org.graalvm.compiler.replacements.test.IndexOobBytecodeExceptionTest
org.graalvm.compiler.hotspot.test.ExplicitExceptionTest
org.graalvm.compiler.core.test.ea.PartialEscapeUnsafeStoreTest
org.graalvm.compiler.jtt.optimize.ABCE_02

Comments
Thanks [~sanzinger], you can close the bug as duplicate of JDK-8202670 which will pull in the changes from the Graal repo.
16-05-2018

[~thartmann] This is fixed in graal with https://github.com/oracle/graal/commit/7b40f392c3fe6126828f5519b67cb84584eb858d Do you need this issue open to track the status on your end?
16-05-2018

Hi Doug, could you please have a look?
15-05-2018

The problem is that the ArrayIndexOutOfBoundsException message changed with JDK-8201593. The tests need to be fixed. ILW = Test failure due to exception message change, multiple Graal unit tests, no workaround = MHH = P2
15-05-2018

The test fails with Graal JIT and without Graal JIT as well.
15-05-2018