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

Worker Versioning: Add visibility tags (and possibly API) to enable worker retirement discovery #3303

Closed
Sushisource opened this issue Sep 2, 2022 · 0 comments
Assignees

Comments

@Sushisource
Copy link
Member

Sushisource commented Sep 2, 2022

We need a way for users to be able to understand when a set of workers can be retired because no more workflows require the version those workers support.

We'll also likely eventually use this to provide automatic notifications of some sort.

We could accomplish this more than one way, but, like we've done with the proto messages it probably makes sense to avoid duplicating the data in the existing BinaryChecksums search attribute while adding a new BuildIDs search attribute.

That also said, BuildIDs would be a much preferable name. After a little googling, seems ES supports aliases, so that seems a good direction.

It's also not clear that the set of all build ids which the workflow has used is sufficient for a user to simply issue a visibility query and learn everything they need to know. At minimum, you'd also need to know which version the last wft was processed with, but even that is likely insufficient. EX: Last WFT was processed with 2.1 but the graph contains 2.2. You could query and find no open workflows have used 2.2, but, you actually need 2.2 workers to make progress.

So, seemingly a combination of the version graph and the visibility data is required, which means either fetching both and performing this determination client side (eww, dupe), or creating a new API server side for this purpose (or augmenting the GetWorkerBuildIDOrdering api).

We could, of course, postpone this "fully correct" version, since the simpler visibility-only approach is sufficient for most cases

@Sushisource Sushisource changed the title Worker Versioning: Add visibility tags to enable worker retirement discovery Worker Versioning: Add visibility tags (and possibly API) to enable worker retirement discovery Sep 2, 2022
@sync-by-unito sync-by-unito bot closed this as completed Mar 3, 2023
@yiminc yiminc reopened this Mar 3, 2023
@bergundy bergundy assigned bergundy and unassigned dnr and Sushisource May 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants