bazelbuild / bazelbuild/remote-apis
Actions created by bazel's --runs_per_test are treated as new
- Dominant language
- Go
- Stars
- 445
- Forks
- 141
- PR merge metrics
- No merged PRs in 30d
Description
Actions created by bazel's --run_per_test flag inject new environment variables such as TEST_RANDOM_SEED and TEST_RUN_NUMBER, which cause remote execution systems such as Buildbarn to interpret them as new actions. In the case of Buildbarn, this prevents it from using size classes correctly, as the tests are treated as new and any prior learning on the execution of these tests is not considered.
Not sure what the solution might be, but is it possible to have some key that identifies actions without considering this env variables that bazel injects?
Contributor guide
Research direction
Start by reviewing the remote execution API concepts involved in action identity, then compare them with Bazel's --runs_per_test variables TEST_RANDOM_SEED and TEST_RUN_NUMBER. The issue does not name files or tests; done would require an agreed design for identifying equivalent actions without those variables and a documented way to validate the behavior with systems such as Buildbarn.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- api, distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100