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

[coccon] Refactor builds scheduling subscription with pubsub #103443

Closed
keyonghan opened this issue May 10, 2022 · 6 comments
Closed

[coccon] Refactor builds scheduling subscription with pubsub #103443

keyonghan opened this issue May 10, 2022 · 6 comments
Labels
team-infra Owned by Infrastructure team

Comments

@keyonghan
Copy link
Contributor

Copied over from https://github.com/flutter/cocoon/pull/1834/files#r869714524

  • Create one message per build, this way we can remove the retry logic from here and avoid duplicated builds as a single passed/failed schedule attempt will be associated with the message
  • Ensure that messages are not being duplicated - this requires to update the subscription to ensure a single message is delivered. This will prevent the message queue to grow exponentially when there is an outage and prevent multiple builds for the same commit/builder combination.
  • Update the configurations to ensure the messages eventually expire, there will be messages that will fail forever until they expire.
@keyonghan keyonghan added team-infra Owned by Infrastructure team good first issue Relatively approachable for first-time contributors labels May 10, 2022
@Hirdey-1999
Copy link

i can be assigned to the problem

@keyonghan keyonghan added this to To do in Infra - pay technical debt via automation Sep 15, 2022
@keyonghan keyonghan removed the good first issue Relatively approachable for first-time contributors label Oct 6, 2022
@keyonghan
Copy link
Contributor Author

This involves interaction with swarming requests in LUCI, and doesn't sound a good fit for first contribution. Just removed the label.

@keyonghan
Copy link
Contributor Author

Recent related instance: builder Mac mac_host_engine failed to get scheduled in flutter/engine#36624

From backend log:

2022-10-05 12:30:33.325 PDT
Response does not have schedule build: No response
2022-10-05 12:30:33.325 PDT
Non-zero grpc code: No response
2022-10-05 12:30:33.326 PDT
Failed to schedule builds: (Mac mac_host_engine).

This happened in cocoon: https://github.com/flutter/cocoon/blob/main/app_dart/lib/src/request_handlers/scheduler/request_subscription.dart#L88

Refactoring the builds scheduling from batch to one message per build should solve the issue.

@godofredoc
Copy link
Contributor

@keyonghan is this still needed?

@keyonghan
Copy link
Contributor Author

This has been obsolete. Closing.

Infra - pay technical debt automation moved this from To do to Done Jun 14, 2023
@github-actions
Copy link

This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jun 28, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
team-infra Owned by Infrastructure team
Projects
Development

No branches or pull requests

3 participants