JDK-8338656 : NPE at org.sunflow.core.Geometry.intersect with -XX:-UseCompressedOops
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 22,23,24
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • Submitted: 2024-08-20
  • Updated: 2024-09-16
  • Resolved: 2024-09-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 24
24Resolved
Related Reports
Duplicate :  
Relates :  
Description
Running Kitchensink (8H) on JDK 24+10 (linux-aarch64) fails intermittently with the following NPE when compressed OOPs are disabled:

java.lang.NullPointerException: Cannot invoke "org.sunflow.core.AccelerationStructure.intersect(org.sunflow.core.Ray, org.sunflow.core.IntersectionState)" because "this.accel" is null
at org.sunflow.core.Geometry.intersect(Unknown Source)
at org.sunflow.core.Instance.intersect(Unknown Source)
at org.sunflow.core.InstanceList.intersectPrimitive(Unknown Source)
at org.sunflow.core.accel.BoundingIntervalHierarchy.intersect(Unknown Source)
at org.sunflow.core.Scene.trace(Unknown Source)
at org.sunflow.core.LightServer$1.run(Unknown Source)
at java.base/java.lang.Thread.run(Thread.java:1575)
Comments
I'm closing this as duplicate of JDK-8335977 because I could not reproduce the issue with -XX:-ReduceAllocationMerges. Once the fix for JDK-8335977 is available, we need to verify that it fixes the issue.
16-09-2024

Turns out that I was lucky. Unfortunately, I did not manage to reproduce this anymore with SPECJvm2008 sunflow, even after thousands of iterations. JDK-8339526 might be related.
11-09-2024

I could not reproduce this with JDK 22 b7 after 1000 runs.
26-08-2024

[~cslucas] FYI, this is likely another regression from JDK-8287061 (it's reproducible with the fix for JDK-8331194). I'm currently trying to narrow it down.
22-08-2024

Good news: I could reproduce this after 65 runs with SPECJvm2008 sunflow and JDK 24-ea+10-1076 on Linux AArch64: java --enable-preview -XX:-UseCompressedOops -XX:MaxRAMPercentage=50 -XX:MaxMetaspaceSize=512m -jar SPECjvm2008.jar -ict -ikv -wt 0 -bt 2 -fit 240 -crf false -ctf false -chf false sunflow Iteration 1 (240s) begins: Wed Aug 21 16:31:49 GMT 2024 Exception in thread "Thread-760" java.lang.NullPointerException: Cannot invoke "org.sunflow.core.AccelerationStructure.intersect(org.sunflow.core.Ray, org.sunflow.core.IntersectionState)" because "this.accel" is null at org.sunflow.core.Geometry.intersect(Unknown Source) at org.sunflow.core.Instance.intersect(Unknown Source) at org.sunflow.core.InstanceList.intersectPrimitive(Unknown Source) at org.sunflow.core.accel.BoundingIntervalHierarchy.intersect(Unknown Source) at org.sunflow.core.Scene.trace(Unknown Source) at org.sunflow.core.LightServer$1.run(Unknown Source) at java.base/java.lang.Thread.run(Thread.java:1575)
21-08-2024

Pre-ILW = Unexpected NPE, extremely intermittent with SpecJvm sunflow benchmark running in parallel with other (stress) tests, no known workaround but potentially -XX:-ReduceAllocationMerges or disable compilation of affected method = HLM = P3
21-08-2024