RFR: 8356870: HotSpotDiagnosticMXBean.dumpThreads and jcmd Thread.dump_to_file updates

Shaojin Wen swen at openjdk.org
Sat May 24 09:43:57 UTC 2025


On Sat, 24 May 2025 06:57:56 GMT, Alan Bateman <alanb at openjdk.org> wrote:

> Updates the thread dump generated by HotSpotDiagnosticMXBean.dumpThreads and jcmd Thread.dump_to_file to include thread state and lock information. Also update the HotSpotDiagnosticMXBean.dumpThreads API description to link to a description of the JSON format dump as that format is intended to be parseable/read by tools.
> 
> This PR is dependent on [pull/25425](https://github.com/openjdk/jdk/pull/25425). As noted in that PR, the changes accumulated in the loom repo, and have been split up to make it easier to review.
> 
> The changes include some re-implementation of ThreadDumper. This is because it used PrintStream and didn't fail if there was an I/O error, e.g. file system full. Furthermore, the indentation to pretty print the json was fragile and hard to maintain so this is changed to use a supporting writer class to do this.
> 
> Test coverage is significantly expanded, including updating the test library that is used by several tests to parse the thread dump.
> 
> Testing: tier1-6

test/lib/jdk/test/lib/threaddump/ThreadDump.java line 385:

> 383:             if (name.length() > 0) {
> 384:                 sb.append(",");
> 385:                 sb.append(name);

Suggestion:

                sb.append(",")
                  .append(name);

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/25429#discussion_r2105772879


More information about the serviceability-dev mailing list