APAR status
Closed as program error.
Error description
Error Message: The return value from Class.isArray() is false even when being called against an array class. . Stack Trace: N/A . The problem can occur on any platform running the J9 VM. The issue must involve a call to Class.isArray() The issue is mostly likely to occur when: - Using the "Type" interface - Casting between "Class" and "Type" Other scenarios are possible, but it must involve a variable holding a Class where the application is behaving incorrectly based on the class type in the variable when calling Class.isArray().
Local fix
The problem is caused by the JIT value propagation optimization therefore the issue can be avoided by disabling that optimization using the following java command line parameter: -Xjit:disableLocalVP,disableGlobalVP You can also use the following option to target the effects to a specific method compilation and therefore minimize the performance impact: -Xjit{pkg/class.method*}(disableLocalVP,disableGlobalVP) Where "pkg/class.method" is the full method name for the method which is triggering the issue. Limiting to one method in this way will very likely result in no noticeable performance impact.
Problem summary
The JIT would remove some code after incorrectly converting a class variable into a constant which would allow the JIT to make a incorrect compile time decision that a code path could not execute and therefore could be removed.
Problem conclusion
The JIT was modified so that it would not incorrectly convert a class variable into a constant. . This APAR will be fixed in the following Releases: . IBM SDK, Java Technology Edition 8 SR7 FP20 (8.0.7.20) . Contact your IBM Product's Service Team for these Service Refreshes and Fix Packs. For those running stand-alone, information about the available maintenance can be found at: https://www.ibm.com/support/pages/java-sdk
Temporary fix
Comments
APAR Information
APAR number
IJ42205
Reported component name
JIT
Reported component ID
620700124
Reported release
130
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2022-08-30
Closed date
2022-09-14
Last modified date
2022-09-14
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":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSNVBF","label":"Runtimes for Java Technology"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"130","Line of Business":{"code":"LOB36","label":"IBM Automation"}}]
Document Information
Modified date:
14 September 2022