Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

x/build/cmd/updatestd: ability to split large updates into a sequence of smaller update CLs, for better bisection #47961

Open
dmitshur opened this issue Aug 25, 2021 · 1 comment
Labels
Builders x/build issues (builders, bots, dashboards) FeatureRequest NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Milestone

Comments

@dmitshur
Copy link
Contributor

At this time the updatestd command updates all golang.org/x versions to latest available when it is run. If run fairly infrequently (e.g., twice per cycle, so every 3 months), there can be many changes in all golang.org/x dependencies, and they're currently all included in one CL.

For purposes of improving the ability to bisect and find a narrower set of changes that may have introduced a problem, it would be better to split such large updates into multiple smaller CL.

Comment #36905 (comment) makes this suggestion.

A strategy of making a CL per module may not scale in the general case: updating to the latest version of module A may cause newer versions of module B to be also pulled in, and since module requirements can have loops, module B can also require newer module A.

Another strategy to consider is to split the large update by time: instead of updating from "3 months old" versions to "latest" directly, it can be "update to versions that were latest 2 months ago", then "update to 1 month old", then finally "latest latest". This can be automated, and needs to be careful to avoid making CLs that move some dependency versions back in time.

There's like some overlap here with issue #41589, but they're not the same.

CC @golang/release, @bcmills.

@dmitshur dmitshur added NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. FeatureRequest labels Aug 25, 2021
@dmitshur dmitshur added this to the Unreleased milestone Aug 25, 2021
@gopherbot gopherbot added the Builders x/build issues (builders, bots, dashboards) label Aug 25, 2021
@dmitshur
Copy link
Contributor Author

dmitshur commented Mar 16, 2022

There's some overlap with #48523 here. There can be a higher-level service that takes on what needs to be done for both of these issues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Builders x/build issues (builders, bots, dashboards) FeatureRequest NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Projects
None yet
Development

No branches or pull requests

2 participants