APAR status
Closed as program error.
Error description
Error Message: Code runs successfully for a while then starts generating NullPointer exceptions. The location generating the exception may seem impossible for the object to be null. The method generating the exception will be running in the interpreter but if a JIT verbose log is taken or a system corefile analysed, it will be seen that the method has been compiled, likely multiple times. . Stack Trace: This is a rare problem that so far has only been reported for java.lang.invoke.BruteArgumentMoverHandle.permuteArguments(Brute ArgumentMoverHandle.java:286) However it's possible that other methods could be impacted. .
Local fix
The problem can be avoided by disabling OSR for the affected method, e.g. for the case above this could be done using the JVM command line argument -Xjit:{java/lang/invoke/BruteArgumentMoverHandle.permuteArgument s(*}(disableOSR),dontInline={java/lang/invoke/BruteArgumentMover Handle.permuteArguments(*} Note that if there is an existing Xjit argument being used it will need to be merged with the above.
Problem summary
The problem is caused when the compiler fails to account for a variable needing to be passed to the interpreter if OSR is used to transfer processing away from the jit'd method body.
Problem conclusion
The compiler has been updated to ensure that variables that escape the method via OSR are correctly tracked and passed to the interpreter. The relevant changes are: https://github.com/eclipse-openj9/openj9/pull/14074 https://github.com/eclipse-openj9/openj9/pull/18315 . This APAR will be fixed in the following Releases: . IBM SDK, Java Technology Edition 8 SR8 FP20 (8.0.8.20) . Downloads and supplementary documentation can be found at the following locations: - For non z/OS operating systems: - IBM Semeru Runtimes, Version 11 and later https://www.ibm.com/semeru-runtimes/downloads/ - IBM SDK, Java Technology Edition, Version 8 https://www.ibm.com/support/pages/java-sdk-downloads/ - For the z/OS operating system: - Java SDK Products on z/OS https://www.ibm.com/support/pages/java-sdk-products-zos
Temporary fix
Comments
APAR Information
APAR number
IJ49741
Reported component name
JIT
Reported component ID
620700124
Reported release
130
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2024-01-16
Closed date
2024-01-16
Last modified date
2024-04-20
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
JIT
Fixed component ID
620700124
Applicable component levels
[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SSNVBF","label":"Runtimes for Java Technology"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"130","Line of Business":{"code":"LOB08","label":"Cognitive Systems"}}]
Document Information
Modified date:
21 April 2024