On Thu, 11 Jul 2024 17:30:21 GMT, Alan Bateman <al...@openjdk.org> wrote:

> Bringover some of the changes accumulated in the loom repo to the main line, 
> most of these changes are test updates and have been baking in the loom repo 
> for several months. The motive is partly to reduce the large set of changes 
> that have accumulated in the loom repo, and partly to improve robustness and 
> test coverage in the main line. The changes don't include any of the larger 
> changes in the loom repo that are part of future JEPs.
> 
> Implementation:
> - Robustness improvements to not throw OOME when unparking a virtual thread.
> - Robustness improvements to reduce class loading when a virtual thread parks 
> or parks when pinned (jdk.internal.misc.VirtualThreads is removed, 
> jdk.internal.event.VirtualThreadPinnedEvent is eagerly loaded)
> - VirtualThread changes to reduce contention on timer queues when doing 
> timed-park
> 
> Tests:
> - New tests for monitor enter/exit/wait/notify (this is a subset of the tests 
> in the loom repo, we can't move many tests because they depend on on the 
> changes to the object monitor implementation)
> - New test infrastructure to allow tests use a custom scheduler. This updates 
> many tests to make use of this infrastructure, the "local" ThreadBuidlers is 
> removed.
> - More test scenarios added to ThreadAPI and JVMTI GetThreadStateTest.java 
> - New test for ThreadMXBean.getLockedMonitor with synchronized native methods
> - Reimplement of JVMTI VThreadEvent test to improve reliability
> - Rename some tests to get consistent naming
> - Diagnostic output in several stress tests to help trace progress in the 
> event of a timeout
> 
> Testing: tier1-6

Q: There are some new files with a copyright year ranges. They are probably 
renamed files. Should their copyright years be updated?

test/jdk/java/lang/Thread/virtual/ThreadAPI.java line 1113:

> 1111:     @Test
> 1112:     void testYield3() throws Exception {
> 1113:         assumeTrue(VThreadScheduler.supportsCustomScheduler(), "No 
> support for custom schedulers");

Q: What was the reason to rename `testYield2()` to `testYield3()`?

test/jdk/java/lang/Thread/virtual/stress/Skynet.java line 72:

> 70:         System.out.format("Result: %d in %s ms%n", sum, (end-start));
> 71:         if (sum != expected)
> 72:             throw new RuntimeException("Expected " + expected);

Nit: This probably needs a copyright update.

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

PR Review: https://git.openjdk.org/jdk/pull/20143#pullrequestreview-2185389469
PR Review Comment: https://git.openjdk.org/jdk/pull/20143#discussion_r1682627996
PR Review Comment: https://git.openjdk.org/jdk/pull/20143#discussion_r1682604568

Reply via email to