RFR: 8337199: Add jcmd Thread.vthread_scheduler and Thread.vthread_pollers diagnostic commands

Kevin Walls kevinw at openjdk.org
Thu Nov 28 14:24:38 UTC 2024


On Wed, 27 Nov 2024 15:59:17 GMT, Alan Bateman <alanb at openjdk.org> wrote:

> Adds `jcmd <pid> Thread.vthread_scheduler` to print the virtual thread scheduler and `jcmd <pid> Thread.vthread_pollers` to print the I/O pollers that support virtual threads doing blocking network I/O operations.
> 
> This is a subset of the diagnostics that we've had in the loom repo for a long time. @larry-cable proposed a PR recently ([pull/22121](https://github.com/openjdk/jdk/pull/22121)) to bring a version of same into main line but it was based on an older proposal. This new PR supplants that effort.
> 
> The jtreg failure handler is updated to execute Thread.vthread_scheduler, useful capture when a test fails or times out.

test/hotspot/jtreg/serviceability/dcmd/thread/VThreadCommandsTest.java line 96:

> 94:                 .shouldContain("Read I/O pollers:")
> 95:                 .shouldContain("Write I/O pollers:")
> 96:                 .shouldMatch("^\\[0\\] sun.nio.ch..+ \\[registered = [\\d]+, owner = .+\\]$");

Just a nit but are there three dots here in sun.nio.ch. that should literally match, so need the \\ 
and then the other two other dots with a plus sign, to match one or more characters.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/22414#discussion_r1862284094


More information about the core-libs-dev mailing list