-
Notifications
You must be signed in to change notification settings - Fork 728
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[JDK18] j.l.RuntimeException: InvocationTargetException was thrown not due to error while initialization! #14080
Comments
eclipse-openj9/openj9#13995 has been fixed via eclipse-openj9/openj9#14044. So, the tests excluded for eclipse-openj9/openj9#13995 have been re-enabled. Tests failures documented in the below issues have been excluded: - eclipse-openj9/openj9#14079 - eclipse-openj9/openj9#14080 - eclipse-openj9/openj9#14084 - eclipse-openj9/openj9#14091 - eclipse-openj9/openj9#14092 - eclipse-openj9/openj9#14093 - eclipse-openj9/openj9#14094 - eclipse-openj9/openj9#14095 Signed-off-by: Babneet Singh <[email protected]>
eclipse-openj9/openj9#13995 has been fixed via eclipse-openj9/openj9#14044. So, the tests excluded for eclipse-openj9/openj9#13995 have been re-enabled. Test failures documented in the below issues have been excluded: - eclipse-openj9/openj9#14079 - eclipse-openj9/openj9#14080 - eclipse-openj9/openj9#14084 - eclipse-openj9/openj9#14091 - eclipse-openj9/openj9#14092 - eclipse-openj9/openj9#14093 - eclipse-openj9/openj9#14094 - eclipse-openj9/openj9#14095 Signed-off-by: Babneet Singh <[email protected]>
eclipse-openj9/openj9#13995 has been fixed via eclipse-openj9/openj9#14044. So, the tests excluded for eclipse-openj9/openj9#13995 have been re-enabled. Test failures documented in the below issues have been excluded: - eclipse-openj9/openj9#14079 - eclipse-openj9/openj9#14080 - eclipse-openj9/openj9#14084 - eclipse-openj9/openj9#14091 - eclipse-openj9/openj9#14092 - eclipse-openj9/openj9#14093 - eclipse-openj9/openj9#14094 - eclipse-openj9/openj9#14095 Signed-off-by: Babneet Singh <[email protected]>
Is there a spec reference for this change? |
Test classInitialization/ExExceptionInClassInitialization was added to verify JEP416 support which re-implements core reflection with MethodHandles. If the test passes by disabling JEP416, then there may be no spec change. Instead, we may be missing JEP416 support since the core reflection API should work the same with and without JEP416. @EricYangIBM Can you disable JEP416 and verify if the test passes? Commit to disable JEP416: 3c9e602. |
Another perspective: This issue may be identical to https://bugs.openjdk.java.net/browse/JDK-8048190 (NoClassDefFoundError omits original ExceptionInInitializerError). 45 older comments are hidden, which should be expanded to read more about the issue. |
The test still fails |
https://bugs.openjdk.java.net/browse/JDK-8048190 looks like it is identical to this issue. The solution to it sets the cause of the |
Is there a spec reference for this change?@EricYangIBM We have to refer to the JVM specification. Section 5.5 mentions about JDK17 JVM spec: https://cr.openjdk.java.net/~iris/se/17/latestSpec/java-se-17-jvms-fr-diffs.pdf re #14080 (comment) other testTest ClassInitErrors/InitExceptionUnloadTest.java relies upon Existing OpenJ9 code related to Section 5.5 ... ExceptionInInitializerErroropenj9/jcl/src/java.base/share/classes/java/lang/J9VMInternals.java Lines 197 to 204 in 258ff43
re #14291In #14291, you created a completely new |
I looked at the language spec 12.4.2: https://cr.openjdk.java.net/~iris/se/18/latestSpec/java-se-18-jls-pr-diffs.pdf#page=448&zoom=100,96,678 If this test isn't based on spec changes then is it necessary? It seems like this behaviour was only implemented by OpenJDK as an enhancement |
It's good to match the behaviour of the reference so that user's don't experience different behaviour, that might cause problems, when moving to OpenJ9. |
When initialization has already failed for a class before, throw `NoClassDefFoundError` with `ExceptionInInitializerError` as its cause instead of the `Throwable` that caused the first initialization failure. Fixes: eclipse-openj9#14080 Signed-off-by: Eric Yang <[email protected]>
When initialization has already failed for a class before, throw `NoClassDefFoundError` with `ExceptionInInitializerError` as its cause instead of the `Throwable` that caused the first initialization failure. Fixes: eclipse-openj9#14080 Signed-off-by: Eric Yang <[email protected]>
When initialization has already failed for a class before, throw `NoClassDefFoundError` with `ExceptionInInitializerError` as its cause instead of the `Throwable` that caused the first initialization failure. Fixes: eclipse-openj9#14080 Signed-off-by: Eric Yang <[email protected]>
Original issue: eclipse-openj9/openj9#14080 Fixed by: eclipse-openj9/openj9#14352 Signed-off-by: Eric Yang <[email protected]>
Original issue: eclipse-openj9/openj9#14080 Fixed by: eclipse-openj9/openj9#14352 Signed-off-by: Eric Yang <[email protected]>
OpenJDK Tests
Error
Related: #13946
The text was updated successfully, but these errors were encountered: