What's new in version 0.44.0
The following new features and notable changes since version 0.43.0 are included in this release:
- VMID query in the
jcmd
tool enhanced - DDR field names in
J9BuildFlags
changed - New system property added to prevent the deletion of the Attach API control files within the
/tmp/
folder
Features and changes
VMID query in the jcmd
tool enhanced
Earlier in OpenJ9, when sending a jcmd
command to a VM, you had to run jcmd -l
to retrieve all the pids for all the VMs found on the machine. Then, you had to use jcmd [vmid] [command]
to send the command to the specific VM.
For OpenJDK compatibility, OpenJ9 now supports direct use of the Java process name, full or partial, as the ID to send the jcmd
command.
The jcmd
tool also now supports specifying 0
as a VMID to target all VMs.
For more information, see Java diagnostic command (jcmd
) tool.
DDR field names in J9BuildFlags
changed
The Direct Dump Reader (DDR) code enables reading system dump data by using the OpenJ9
Diagnostic Tool Framework for Java (DTFJ) API or the jdmpview
tool.
DDR code uses fields of J9BuildFlags
to access build flags in the system dump data.
The names of J9BuildFlags
fields changed over time and therefore, supporting system dumps with different build flags became a challenge.
Earlier, field names in J9BuildFlags
were based on names defined in j9.flags
. Now, when the J9BuildFlags
is generated for each build, the flag names are those names that are specified in j9cfg.h
(derived from j9cfg.h.ftl
or j9cfg.h.in
) instead of the names that are defined in j9.flags
. For example, env_data64
is now referred to as J9VM_ENV_DATA64
.
You can extend the DDR code, adding your own commands, by writing plug-ins. If the user plug-in code contains references to fields of J9BuildFlags
to read the build flags in the system dump data, you must change references to use the names as specified in j9cfg.h
.
New system property added to prevent the deletion of the Attach API control files within the /tmp/
folder
You can use the -Dcom.ibm.tools.attach.fileAccessUpdateTime
system property to prevent Linux® systemd-tmpfiles
from deleting the Attach API control files within the /tmp/
folder. By updating the Attach API control file access times to avoid deletion by systemd-tmpfiles
, the long-running Attach API can continue to use the control files to operate. This system property enables Attach API to update the control file access times at specific intervals.
For more information, see -Dcom.ibm.tools.attach.fileAccessUpdateTime
.