Integrated: 8309334: ProcessTools.main() does not properly set thread names when using the virtual thread wrapper
Chris Plummer
cjplummer at openjdk.org
Sun Jun 4 18:21:14 UTC 2023
On Fri, 2 Jun 2023 21:30:46 GMT, Chris Plummer <cjplummer at openjdk.org> wrote:
> Normally when a virtual thread wrapper is used to run a test, the main thread is renamed to "old-m-a-i-n" and the new virtual thread that will act as the main thread is named "main". Neither is being done by `ProcessTools.main()`. This can cause problems for tests that expect the main thread that the test is running in to be called "main". It is instead left unnamed. This is causing the following 4 tests to fail:
>
> com/sun/jdi/JdbMethodExitTest.java
> com/sun/jdi/JdbStepTest.java
> com/sun/jdi/JdbStopThreadTest.java
> com/sun/jdi/JdbStopThreadidTest.java
>
> These tests also fail due to [JDK-8309397](https://bugs.openjdk.org/browse/JDK-8309397), which will be fixed after this CR, and also com/sun/jdi/JdbMethodExitTest.java fails due to [JDK-8309396](https://bugs.openjdk.org/browse/JDK-8309396), which will also subsequently be fixed.
>
> Note this fix messed up one runtime test. It was expecting an exception message to mention the "main" thread rather than "old-m-a-i-n". Loosening the exception message matching pattern a bit solved the problem.
>
> Testing was done by running all of tier1 and tier5.
This pull request has now been integrated.
Changeset: ecb17532
Author: Chris Plummer <cjplummer at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/ecb17532dc8f3e271ad2d6550127a2253569cf9b
Stats: 24 lines in 3 files changed: 5 ins; 16 del; 3 mod
8309334: ProcessTools.main() does not properly set thread names when using the virtual thread wrapper
Reviewed-by: amenkov, lmesnik, sspitsyn, alanb
-------------
PR: https://git.openjdk.org/jdk/pull/14292
More information about the core-libs-dev
mailing list