RFR: 7902831: Provide a way to isolate tests from general concurrency

Evgeny Nikitin enikitin at openjdk.java.net
Mon Nov 29 14:54:34 UTC 2021


The PR expands the test isolation possibilities to the whole machine. Possibility to limit exclusiveness to the directory remains.
There are two options now: "exclusiveAccess.dirs" (a directory list), and "exclusiveAccess.machine" (boolean).

The solution is based on the ReentrantReadWriteLock, Write lock is held by machine-exclusive executors while read lock is taken for directory-only and fully-concurrent tests. Directory-scoped isolation is achieved by an additional lock.

Testing: shell-based tests added, run locally.

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

Commit messages:
 - Split exclusiveAccess.dirs into dirs and machine
 - Add exclusiveAccess dirs and machine tests
 - Merge branch 'iignatev_7902831' into CODETOOLS-7902831/sandbox
 - use read-write lock
 - 7902831: Provide way to isolate tests from general concurrency

Changes: https://git.openjdk.java.net/jtreg/pull/43/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jtreg&pr=43&range=00
  Issue: https://bugs.openjdk.java.net/browse/CODETOOLS-7902831
  Stats: 376 lines in 31 files changed: 226 ins; 83 del; 67 mod
  Patch: https://git.openjdk.java.net/jtreg/pull/43.diff
  Fetch: git fetch https://git.openjdk.java.net/jtreg pull/43/head:pull/43

PR: https://git.openjdk.java.net/jtreg/pull/43


More information about the jtreg-dev mailing list