Timing data should sometimes be saved for failed builds
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- python
- Domain
- performance, testing
Research direction
No files or tests are named. Trace where saved timing data is updated after builds, then inspect how failed atoms and the age of the last successful timing data are represented. Done means failed builds can provide timing data when none exists or when successful data is sufficiently old, without replacing fresh successful data unnecessarily.
Written by the indexing model from the issue text.
Description
Currently we only update saved timing data for a job when a build is successful (no failed atoms). This makes sense in general -- failed builds might have unrepresentative timing data.
I think there are situations though when we might want to update timing data even when atoms fail. The situations I was thinking of were
- when no timing data currently exists. When a job config is first created, no timing data exists and it's common for users to still be working out the kinks in their config, so there may be many initial builds that all fail. It would be better if clusterrunner would save timing data even for failed builds if it doesn't have data for a successful build.
- when a build has not passed in a long time. We've seen in practice that old timing data can actually have a worse affect on build times than having no timing data at all. If there is something weird about a job causing builds to fail and nobody notices, this can cause build times to slowly increase over time as the timing data gets more and more outdated.
- Dominant language
- Python
- Stars
- 184
- Forks
- 41
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from box/ClusterRunner
-
bug minor
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
box/ClusterRunner#336 ·
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
box/ClusterRunner#150 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 45/100
box/ClusterRunner#457 · 2 comments ·
-
major
Difficulty 5/5 Over a week Newbie friendliness 25/100
box/ClusterRunner#433 · 4 comments · 48 reactions ·
-
enhancement help wanted
Difficulty 4/5 3-5 days Newbie friendliness 35/100
box/ClusterRunner#411 · 1 comment ·
All issues in box/ClusterRunner
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100