Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

8288899: java/util/concurrent/ExecutorService/CloseTest.java failed with "InterruptedException: sleep interrupted" #14301

Closed
wants to merge 103 commits into from
Closed
Changes from 1 commit
Commits
Show all changes
103 commits
Select commit Hold shift + click to select a range
6f14832
Shutdown changes to address JDK-8288899 and JDK-8286352
DougLea Dec 24, 2022
8a6ff99
Refactor and regularize use of tryTerminate
DougLea Dec 28, 2022
8c11c2e
Merge remote-tracking branch 'refs/remotes/origin/JDK-8288899' into J…
DougLea Dec 28, 2022
4bfaac1
More uniform termnination for interruptibles
DougLea Jan 1, 2023
9412a0e
Make ExecutorService method exceptions conform to others.
DougLea Jan 5, 2023
6c76908
More exception compatibility
DougLea Jan 7, 2023
b01a9c6
Merge branch 'openjdk:master' into JDK-8288899
DougLea Jan 7, 2023
6d1578e
Fix more exception policy mismatches
DougLea Jan 8, 2023
c09461f
More exception policy fixes
DougLea Jan 11, 2023
9657753
Merge branch 'openjdk:master' into JDK-8288899
DougLea Jan 11, 2023
72b6177
Ensure consistency across quiescence and runState decisions
DougLea Jan 21, 2023
35a758a
Merge branch 'openjdk:master' into JDK-8288899
DougLea Jan 21, 2023
b01fe39
Check termination in ManagedBlockers
DougLea Jan 22, 2023
9af7c2e
Merge branch 'openjdk:master' into JDK-8288899
DougLea Jan 22, 2023
212dc07
More uniform handling of Interruptibles
DougLea Jan 28, 2023
6489917
Merge branch 'openjdk:master' into JDK-8288899
DougLea Jan 28, 2023
d34879e
Redesign using ExecutorServiceTasks for external submissions
DougLea Feb 13, 2023
4f5c77f
Merge branch 'openjdk:master' into JDK-8288899
DougLea Feb 13, 2023
47119e3
Merge branch 'openjdk:master' into JDK-8288899
DougLea Feb 26, 2023
4c06b0a
Merge branch 'openjdk:master' into JDK-8288899
DougLea Mar 18, 2023
c286c1e
Recover performance
DougLea Mar 18, 2023
c1f31ae
Merge branch 'openjdk:master' into JDK-8288899
DougLea Mar 20, 2023
d2c0742
Avoid more performance regressions
DougLea Mar 20, 2023
73e9291
Merge branch 'openjdk:master' into JDK-8288899
DougLea Mar 23, 2023
985a6cf
Merge branch 'openjdk:master' into JDK-8288899
DougLea Mar 31, 2023
815decc
More compatibility updates
DougLea Mar 31, 2023
201165c
Separate invokeAll pending resolution
DougLea Apr 3, 2023
c711fdb
Merge branch 'openjdk:master' into JDK-8288899
DougLea Apr 3, 2023
76c20b4
Merge branch 'openjdk:master' into JDK-8288899
DougLea Apr 8, 2023
12fabf6
Add invokeAnyUninterruptibly
DougLea Apr 8, 2023
2dce131
Merge branch 'openjdk:master' into JDK-8288899
DougLea Apr 17, 2023
4b98ae5
minor improvements and renamings
DougLea Apr 17, 2023
dcfe43a
Reduce contention
DougLea Apr 26, 2023
d9a3b97
Merge branch 'openjdk:master' into JDK-8288899
DougLea Apr 26, 2023
0e3a66a
Merge branch 'openjdk:master' into JDK-8288899
DougLea May 8, 2023
ee36c5c
Merge branch 'openjdk:master' into JDK-8288899
DougLea May 8, 2023
2d077b6
Merge branch 'openjdk:master' into JDK-8288899
DougLea May 25, 2023
4a00ab4
Merge branch 'openjdk:master' into JDK-8288899
DougLea Jun 3, 2023
6a116f5
Rework versioning
DougLea Jun 3, 2023
e29bbca
Merge branch 'openjdk:master' into JDK-8288899
DougLea Aug 7, 2023
030ed8f
ExecutorService tests
DougLea Aug 9, 2023
2549953
Merge branch 'openjdk:master' into JDK-8288899
DougLea Aug 9, 2023
bec6e20
resync
DougLea Aug 9, 2023
b276121
Update @since tags
DougLea Aug 14, 2023
585769c
Merge branch 'openjdk:master' into JDK-8288899
DougLea Aug 14, 2023
901f5bd
Avoid false-alarm failures on shutdown
DougLea Aug 17, 2023
3983281
Pass through cancellations in FJ tests
DougLea Aug 17, 2023
11b9d73
Merge branch 'openjdk:master' into JDK-8288899
DougLea Aug 17, 2023
7ad962d
Allow cancel in checkCompletedAbnormally
DougLea Aug 17, 2023
27f7357
Typo
DougLea Aug 17, 2023
1a7466d
Use signalWork in isQuiescent
DougLea Aug 19, 2023
50fe9a4
Ensure thread not interrupted when testing close
DougLea Aug 20, 2023
76abc1f
Run close tests in seperate threads
DougLea Aug 21, 2023
c4b9749
Ensure each CloseTest test runs in a new thread
DougLea Aug 22, 2023
d1515cd
Merge branch 'openjdk:master' into JDK-8288899
DougLea Aug 22, 2023
61381db
Resync CloseTest
DougLea Aug 22, 2023
9d1b55a
Ordering for termination triggering
DougLea Aug 24, 2023
9a329b6
Isolate unexpected interrupt status issues
DougLea Aug 25, 2023
5a4131f
Conditionalize new tests
DougLea Aug 25, 2023
2fd8bb8
Clear interrupts at top level
DougLea Aug 26, 2023
6bc1b60
Merge branch 'openjdk:master' into JDK-8288899
DougLea Aug 26, 2023
4b12ddc
Avoid unwanted jtreg interrupts; undo unnecessary changes
DougLea Aug 27, 2023
5359956
Fix tests, undo workarounds
DougLea Sep 1, 2023
c40a324
Merge branch 'openjdk:master' into JDK-8288899
DougLea Sep 1, 2023
b35efb0
Ignore more stray interrupts by test harness
DougLea Sep 2, 2023
9d59069
Avoid jtreg test group
DougLea Sep 3, 2023
551a9cf
Merge branch 'openjdk:master' into JDK-8288899
DougLea Sep 4, 2023
787c1cb
Avoid needing test threads
DougLea Sep 5, 2023
f2dd803
Allow ThreadGroup access in tck tests
DougLea Sep 6, 2023
e4b6426
Use non-recursive tasks in close tests
DougLea Sep 8, 2023
0eadfc7
Merge branch 'openjdk:master' into JDK-8288899
DougLea Sep 8, 2023
3e103e0
Always help terminate when stopping
DougLea Sep 9, 2023
31a1f34
Simplify signalling
DougLea Sep 10, 2023
4eeb5e5
Force more orderings; improve diagnostics
DougLea Sep 11, 2023
729e34f
Merge branch 'openjdk:master' into JDK-8288899
DougLea Sep 11, 2023
e8d7b75
Strengthen translation of getAndX atomics; revert or adapt FJP accord…
DougLea Sep 13, 2023
d04ce80
Merge branch 'openjdk:master' into JDK-8288899
DougLea Sep 13, 2023
44eb2f7
Revert Unsafe; reduce signal stalls
DougLea Sep 15, 2023
b9792f6
Merge branch 'openjdk:master' into JDK-8288899
DougLea Sep 15, 2023
4d9c69a
Fix header; don't shadow park state
DougLea Sep 16, 2023
e0ec06d
Merge branch 'openjdk:master' into JDK-8288899
DougLea Sep 16, 2023
907ad02
Accommodate parallelism 0
DougLea Sep 16, 2023
a7ff60e
Fix and improve windowing
DougLea Sep 25, 2023
bc9cc04
Ensure publishabliity on resize
DougLea Sep 25, 2023
8e6b0be
Merge branch 'openjdk:master' into JDK-8288899
DougLea Sep 25, 2023
038d587
more conservative resize checks
DougLea Sep 26, 2023
ed3b749
Possibly re-interrupt when stopping
DougLea Sep 27, 2023
8b88881
Merge branch 'openjdk:master' into JDK-8288899
DougLea Sep 28, 2023
85c26d2
Streamline push; add redundant interrupts
DougLea Sep 28, 2023
9b71422
Undo stray edit
DougLea Sep 28, 2023
ffc7839
refactor termination
DougLea Oct 1, 2023
71ab0a2
Merge branch 'openjdk:master' into JDK-8288899
DougLea Oct 1, 2023
078655e
cleanup
DougLea Oct 2, 2023
01e31ed
Merge branch 'openjdk:master' into JDK-8288899
DougLea Oct 2, 2023
eb0f8dc
better window encoding
DougLea Oct 7, 2023
5f40a9d
Merge branch 'openjdk:master' into JDK-8288899
DougLea Oct 7, 2023
45585dc
More cleanup
DougLea Oct 11, 2023
005ea62
Merge branch 'openjdk:master' into JDK-8288899
DougLea Oct 13, 2023
f46aa90
Ensure liveness for InterruptibleTasks
DougLea Oct 20, 2023
faaf54b
Merge master
DougLea Oct 20, 2023
84f06bc
Merge branch 'openjdk:master' into JDK-8288899
DougLea Oct 20, 2023
caeb37a
reduce memory contention
DougLea Oct 26, 2023
7c2f987
Merge branch 'openjdk:master' into JDK-8288899
DougLea Oct 26, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 3 additions & 12 deletions test/jdk/java/util/concurrent/tck/JSR166TestCase.java
Original file line number Diff line number Diff line change
@@ -1649,18 +1649,9 @@ <T> void checkTimedGet(Future<T> f, T expectedValue) {

// Avoids unwanted interrupts when run inder jtreg
static ThreadGroup topThreadGroup() {
ThreadGroup g = Thread.currentThread().getThreadGroup();
for (ThreadGroup p;;) {
try {
p = g.getParent();
} catch (Exception ok) { // possible under SecurityManager
break;
}
if (p == null)
break;
g = p;
}
return g;
for (ThreadGroup g = Thread.currentThread().getThreadGroup(), p; ; g = p)
if ((p = g.getParent()) == null)
return g;
}
static final ThreadGroup jsr166TestThreadGroup =
new ThreadGroup(topThreadGroup(), "jsr1666TestThreadGroup");
1 change: 1 addition & 0 deletions test/jdk/java/util/concurrent/tck/tck.policy
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
grant {
// Permissions j.u.c. needs directly
permission java.lang.RuntimePermission "modifyThread";
permission java.lang.RuntimePermission "modifyThreadGroup";
permission java.lang.RuntimePermission "getClassLoader";
permission java.lang.RuntimePermission "setContextClassLoader";
permission java.util.PropertyPermission "*", "read";