On Mon, 13 Jan 2025 14:42:04 GMT, Jaikiran Pai <j...@openjdk.org> wrote:
>> Can I please get a review for this test-only change which proposes to skip >> this test when the `main()` is launched through a virtual thread? >> >> This test was introduced in https://bugs.openjdk.org/browse/JDK-8233018 , >> before virtual threads were introduced. In its current form the test doesn't >> take into account the specification of `DatagramSocket.receive()` when a >> virtual thread is doing the `receive()`. There's already the >> `test/jdk/java/net/vthread/BlockingSocketOps.java` test which exercises the >> `receive()` through a virtual thread and verifies its specified behaviour, >> so we can skip this `InterruptibleDatagramSocket` test when a virtual thread >> is involved. >> >> With the proposed change, the test no longer fails and is reported as >> skipped by jtreg. > > Jaikiran Pai has updated the pull request incrementally with one additional > commit since the last revision: > > Alan's review - update skip reason test/jdk/java/net/DatagramSocket/InterruptibleDatagramSocket.java line 104: > 102: throw new jtreg.SkippedException( > 103: "skipping test execution - main thread is a virtual > thread"); > 104: } I wonder - would it work instead to replace: test(s, false); with test(s, Thread.currentThread().isVirtual()); I am not sure it would work - because the exception that gets thrown could be different... But this would be a way to test both the main-is-virtual and main-is-not-virtual cases. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/23074#discussion_r1913404913