RFR: 8320707: Virtual thread test updates [v2]
Jaikiran Pai
jpai at openjdk.org
Wed Jan 3 11:41:39 UTC 2024
On Tue, 2 Jan 2024 15:22:05 GMT, Alan Bateman <alanb at openjdk.org> wrote:
>> A lot of test changes have accumulated in the loom repo, this includes both new tests and updates to existing tests. Some of these updates can be brought to the main line. This update brings over:
>>
>> - The existing tests for pinning use synchronized blocks. In preparation for changes to allow carrier thread be released when a virtual thread parks holding a monitor or blocks on monitorenter, these tests are changed to pin by having a native frame on the stack. This part includes test infrastructure to make it easy to add more tests that do operations while pinned. The tests still test what they were originally created to test of course.
>>
>> - The test for the JFR jdk.VirtualThreadPinned event is refactored to allow for additional cases where the event may be reported.
>>
>> - ThreadAPI is expanded to cover test for uncaught exception handling.
>>
>> - GetStackTraceWhenRunnable is refactored to not use a Selector, otherwise this test will be invalidated when blocking selection operations release the carrier.
>>
>> - StressStackOverflow is dialed down to run for 1m instead of 2mins.
>>
>> - The use of CountDownLatch in a number of tests that poll thread state has been dropped to keep the tests as simple as possible.
>
> Alan Bateman has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains four additional commits since the last revision:
>
> - Revert changes to TracePinnedThreads.java
> - Sync up from loom repo
> - Merge
> - Initial commit
test/jdk/java/lang/Thread/virtual/stress/Skynet.java line 29:
> 27: * @requires vm.continuations
> 28: * @requires !vm.debug | vm.gc != "Z"
> 29: * @run main/othervm/timeout=300 -Xmx1500m Skynet
Are these heap sizing changes to reduce the resource usage of this test or is it to try and trigger any potential issue that this test verifies?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/17136#discussion_r1440354141
More information about the core-libs-dev
mailing list