RFR: 8308038: java/util/concurrent/ThreadPerTaskExecutor/ThreadPerTaskExecutorTest.java timed out
Alan Bateman
alanb at openjdk.org
Mon May 22 08:37:00 UTC 2023
This is a test only change to the unit test for the ExecutorService returned by Executors.newThreadPerTaskExecutor. The tests for interrupting invokeAll assume the threads started to execute the tasks do actually execute the task code. The refresh in JEP 444 changed the implementation to use FutureTask, and FutureTask checks the interrupt status before it executes the task code. So some intermittent timeouts of the tests for interrupting invokeAll as those tests were waiting for the task to complete.
The main change is that the tests for interrupting invokeAll are changed to interrupt when the main thread blocks in invokeAll. They are also changed to check if the task started or not. The tests for interrupting invokeAny already did this, but these are changed to use the same infrastructure to avoid having two styles of tests in the same source file.
-------------
Commit messages:
- Update
- Merge
- Initial commit
Changes: https://git.openjdk.org/jdk/pull/14072/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=14072&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8308038
Stats: 206 lines in 1 file changed: 87 ins; 57 del; 62 mod
Patch: https://git.openjdk.org/jdk/pull/14072.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/14072/head:pull/14072
PR: https://git.openjdk.org/jdk/pull/14072
More information about the core-libs-dev
mailing list