ADDITIONAL SYSTEM INFORMATION :
macOS
openjdk version "20.0.1" 2023-04-18
OpenJDK Runtime Environment Temurin-20.0.1+9 (build 20.0.1+9)
OpenJDK 64-Bit Server VM Temurin-20.0.1+9 (build 20.0.1+9, mixed mode)
A DESCRIPTION OF THE PROBLEM :
When calling "ProcessHandle.current().info().command().orElse(null)" from a VM with -Xcheck:jni enabled, Java emits the following warnings:
WARNING: JNI local refs: 33, exceeds capacity: 32
at java.lang.ProcessHandleImpl$Info.info0(java.base@19.0.2/Native Method)
at java.lang.ProcessHandleImpl$Info.info(java.base@19.0.2/ProcessHandleImpl.java:607)
at java.lang.ProcessHandleImpl.info(java.base@19.0.2/ProcessHandleImpl.java:524)
at ...
This warning makes it difficult to use -Xcheck:jni as a validation step to find bugs in our own code.
The bug does not occur with IBM Semeru, for example.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Launch java with code that calls "ProcessHandle.current().info().command().orElse(null)", and has "-Xcheck:jni" enabled.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
No warnings from Java SDK code
ACTUAL -
Several occurrences of
WARNING: JNI local refs: 33, exceeds capacity: 32
at java.lang.ProcessHandleImpl$Info.info0(java.base@19.0.2/Native Method)
at java.lang.ProcessHandleImpl$Info.info(java.base@19.0.2/ProcessHandleImpl.java:607)
at java.lang.ProcessHandleImpl.info(java.base@19.0.2/ProcessHandleImpl.java:524)
at ...
---------- BEGIN SOURCE ----------
ProcessHandle.current().info().command().orElse(null)
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
Use IBM Semeru
FREQUENCY : always
macOS
openjdk version "20.0.1" 2023-04-18
OpenJDK Runtime Environment Temurin-20.0.1+9 (build 20.0.1+9)
OpenJDK 64-Bit Server VM Temurin-20.0.1+9 (build 20.0.1+9, mixed mode)
A DESCRIPTION OF THE PROBLEM :
When calling "ProcessHandle.current().info().command().orElse(null)" from a VM with -Xcheck:jni enabled, Java emits the following warnings:
WARNING: JNI local refs: 33, exceeds capacity: 32
at java.lang.ProcessHandleImpl$Info.info0(java.base@19.0.2/Native Method)
at java.lang.ProcessHandleImpl$Info.info(java.base@19.0.2/ProcessHandleImpl.java:607)
at java.lang.ProcessHandleImpl.info(java.base@19.0.2/ProcessHandleImpl.java:524)
at ...
This warning makes it difficult to use -Xcheck:jni as a validation step to find bugs in our own code.
The bug does not occur with IBM Semeru, for example.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Launch java with code that calls "ProcessHandle.current().info().command().orElse(null)", and has "-Xcheck:jni" enabled.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
No warnings from Java SDK code
ACTUAL -
Several occurrences of
WARNING: JNI local refs: 33, exceeds capacity: 32
at java.lang.ProcessHandleImpl$Info.info0(java.base@19.0.2/Native Method)
at java.lang.ProcessHandleImpl$Info.info(java.base@19.0.2/ProcessHandleImpl.java:607)
at java.lang.ProcessHandleImpl.info(java.base@19.0.2/ProcessHandleImpl.java:524)
at ...
---------- BEGIN SOURCE ----------
ProcessHandle.current().info().command().orElse(null)
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
Use IBM Semeru
FREQUENCY : always