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 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

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

Commit messages:
 - Initial commit
 - initial fix

Changes: https://git.openjdk.org/jdk/pull/25429/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=25429&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8356870
  Stats: 2407 lines in 16 files changed: 1985 ins; 125 del; 297 mod
  Patch: https://git.openjdk.org/jdk/pull/25429.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/25429/head:pull/25429

PR: https://git.openjdk.org/jdk/pull/25429

Reply via email to