JDK-8222413 : JTreg test compiler/cha/StrengthReduceInterfaceCall.java fails
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: repo-valhalla
  • Priority: P4
  • Status: Resolved
  • Resolution: Cannot Reproduce
  • Submitted: 2019-04-12
  • Updated: 2020-04-06
  • Resolved: 2020-04-06
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.
Other
repo-valhallaResolved
Related Reports
Relates :  
Description
Jtreg hotspot test compiler/cha/StrengthReduceInterfaceCall.java fails in the Valhalla nestmates repo with the following error:

Caused by: java.lang.IncompatibleClassChangeError: Type compiler.cha.StrengthReduceInterfaceCall$ObjectToString (loader: compiler.cha.StrengthReduceInterfaceCall$MyClassLoader @5e8ad876) is not a nest member of compiler.cha.StrengthReduceInterfaceCall (loader: 'app'): types are in different packages

Comments
The test no longer fails.
06-04-2020

The test is new. It was added on 31-Jan-2019 as part of the fix for JDK-6986483.
15-04-2019

Types loaded by different classloaders are by definition in different runtime packages. Has something changed to make this test fail? Is it new? We've had a few tests where nested types were explicitly loaded in a different classloader, but this seems a new one.
14-04-2019

It looks like the ICCE is thrown because the nest member check fails. It fails because even though the two classes are in the same package they have different class loaders.
12-04-2019

Full stack trace: java.lang.Error: java.lang.reflect.InvocationTargetException at compiler.cha.StrengthReduceInterfaceCall.run(StrengthReduceInterfaceCall.java:827) at compiler.cha.StrengthReduceInterfaceCall.main(StrengthReduceInterfaceCall.java:73) 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:567) at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127) at java.base/java.lang.Thread.run(Thread.java:835) Caused by: java.lang.reflect.InvocationTargetException 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:567) at compiler.cha.StrengthReduceInterfaceCall.run(StrengthReduceInterfaceCall.java:823) ... 7 more Caused by: java.lang.IncompatibleClassChangeError: Type compiler.cha.StrengthReduceInterfaceCall$ObjectToString (loader: compiler.cha.StrengthReduceInterfaceCall$MyClassLoader @5e8ad876) is not a nest member of compiler.cha.StrengthReduceInterfaceCall (loader: 'app'): types are in different packages at java.base/java.lang.ClassLoader.defineClass0(Native Method) at java.base/java.lang.System$2.defineClass(System.java:2193) at java.base/java.lang.invoke.MethodHandles$Lookup.defineClassWithNoCheck(MethodHandles.java:1268) at java.base/java.lang.invoke.MethodHandles$Lookup.defineClassWithNoCheck(MethodHandles.java:1228) at java.base/java.lang.invoke.InnerClassLambdaMetafactory.spinInnerClass(InnerClassLambdaMetafactory.java:319) at java.base/java.lang.invoke.InnerClassLambdaMetafactory.buildCallSite(InnerClassLambdaMetafactory.java:190) at java.base/java.lang.invoke.LambdaMetafactory.metafactory(LambdaMetafactory.java:329) at java.base/java.lang.invoke.BootstrapMethodInvoker.invoke(BootstrapMethodInvoker.java:127) at java.base/java.lang.invoke.CallSite.makeSite(CallSite.java:307) at java.base/java.lang.invoke.MethodHandleNatives.linkCallSiteImpl(MethodHandleNatives.java:271) at java.base/java.lang.invoke.MethodHandleNatives.linkCallSite(MethodHandleNatives.java:261) at compiler.cha.StrengthReduceInterfaceCall$ObjectToString.testMega(StrengthReduceInterfaceCall.java:138) ... 12 more JavaTest Message: Test threw exception: java.lang.Error: java.lang.reflect.InvocationTargetException JavaTest Message: shutting down test
12-04-2019