Skip to content

Commit

Permalink
Run concurrency tests as part of CI build (#5498)
Browse files Browse the repository at this point in the history
While we added concurrency tests, they were not being run as part of the build. In order to ensure concurrency issues aren't introduced by a change we didn't expect to affect that, we should regularly run the concurrency test suite.

The `default` mode took too long on CI, but `quick` seems to be reasonably quick. If a concurrency issue is harder to reproduce, running the tests with a more stressed mode may be necessary.
  • Loading branch information
shakuzen authored Oct 2, 2024
1 parent 45df021 commit 75c7671
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 0 deletions.
15 changes: 15 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,12 @@ jobs:
steps:
- gradlew-build

concurrency-tests:
executor: circle-jdk-executor
steps:
- gradlew-build:
command: jcstress

docker-tests:
executor: machine-executor
steps:
Expand All @@ -101,12 +107,14 @@ workflows:
- build
- build-jdk11
- build-jdk17
- concurrency-tests
- docker-tests
- deploy:
requires:
- build
- build-jdk11
- build-jdk17
- concurrency-tests
- docker-tests
filters:
branches:
Expand All @@ -133,6 +141,12 @@ workflows:
ignore: /.*/
tags:
only: /^v\d+\.\d+\.\d+(-(RC|M)\d+)?$/
- concurrency-tests:
filters:
branches:
ignore: /.*/
tags:
only: /^v\d+\.\d+\.\d+(-(RC|M)\d+)?$/
- docker-tests:
filters:
branches:
Expand All @@ -144,6 +158,7 @@ workflows:
- build
- build-jdk11
- build-jdk17
- concurrency-tests
- docker-tests
filters:
tags:
Expand Down
3 changes: 3 additions & 0 deletions concurrency-tests/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,8 @@ dependencies {
jcstress {
libs.jcstressCore

// This affects how long and thorough testing will be
// In order of increasing stress: sanity, quick, default, tough, stress
mode = 'quick'
verbose = true
}

0 comments on commit 75c7671

Please sign in to comment.