-
Notifications
You must be signed in to change notification settings - Fork 3.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
30977: roachtest: rewrite the test runner r=andreimatei a=andreimatei This patch reimplements the roachtest test runner. Some issues with the previous version: - roachtest --paralleism is ignored when running a single test - repeated runs of that test don't reuse clusters - cluster reuse is achieved through an inflexible subtest mechanism - there's no way to control the quota used on GCE. There's only a way to control the number of tests that run in parallel This patch takes a clean-slate approach to the runner. It introduces a runner that takes a --cpu-quota (#cloud cpus) and then, building on the cluster reuse policies introduced in the previous commit, tries to schedule tests most efficiently and with the greatest parallelism while staying under that quota (and also while staying under the --parallelism, which now acts purely to protect against too many tests mthrashing the local machine). The runner starts --parallelism workers and lets them compete on a ResourceGovernor which manages the cloud quota. Tests are seen abstractly as units of work. There's no more subtests, and --count is supported naturally as more work. The scheduling policy is not advanced: at any point in time, a worker has a cluster and will continuously select tests that can reuse that cluster. When no more tests can reuse it, the cluster is destroyed, new resources acquired and a new cluster created. Within multiple tests that can all reuse a cluster, ones that don't soil the cluster are preferred. Within otherwise equal tests, the ones with more runs remaining are preferred. Release note: None Co-authored-by: Andrei Matei <[email protected]>
- Loading branch information
Showing
69 changed files
with
2,981 additions
and
1,835 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.