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

Dynamic spawn scheduler prevents remote cache from being populated #7328

Open
Tracked by #19904
jmmv opened this issue Feb 1, 2019 · 2 comments
Open
Tracked by #19904

Dynamic spawn scheduler prevents remote cache from being populated #7328

jmmv opened this issue Feb 1, 2019 · 2 comments
Labels
not stale Issues or PRs that are inactive but not considered stale P3 We're not considering working on this, but happy to review a PR. (No assignee) team-Remote-Exec Issues and PRs for the Execution (Remote) team type: feature request

Comments

@jmmv
Copy link
Contributor

jmmv commented Feb 1, 2019

When a local action racing a remote action wins, the dynamic spawn scheduler cancels the remote action. As a result, we never populate the remote cache with the results of this cancelled action, and subsequent builds from the same or a different user cannot benefit from reuse.

An option here would be to make the dynamic spawn scheduler not cancel remote actions. This way they would eventually populate the cache and be reusable by other users/builds. But this would be inefficient because we'd leave some remote actions running when we know we don't truly care about their results.

Therefore, a better solution suggested by @philwo would be to delegate this "cancellation" to the remote execution service. The dynamic spawn scheduler should tell the remote service that it doesn't care about the action any longer (instead of forcibly canceling it), and the remote service would be in charge of deciding whether it wants to continue running the action if resources permit it or dropping it under pressure (or whichever other policy).

Filing under Bazel because we need to propagate this signal to the remote execution engine, which requires code changes and possibly some changes to the protocol. CC @buchgr

@jmmv jmmv added type: feature request P3 We're not considering working on this, but happy to review a PR. (No assignee) team-Local-Exec Issues and PRs for the Execution (Local) team team-Remote-Exec Issues and PRs for the Execution (Remote) team labels Feb 1, 2019
@dslomov
Copy link
Contributor

dslomov commented Feb 15, 2019

(please do not assign issues to more than one team-*)

@dslomov dslomov removed the team-Local-Exec Issues and PRs for the Execution (Local) team label Feb 15, 2019
@jmmv jmmv changed the title Dynamic spawn scheduler prevent remote cache from being populated Dynamic spawn scheduler prevents remote cache from being populated Feb 19, 2019
@sgowroji sgowroji added the stale Issues or PRs that are stale (no activity for 30 days) label Feb 16, 2023
@sgowroji
Copy link
Member

Hi there! We're doing a clean up of old issues and will be closing this one. Please reopen if you’d like to discuss anything further. We’ll respond as soon as we have the bandwidth/resources to do so.

@sgowroji sgowroji closed this as not planned Won't fix, can't repro, duplicate, stale Feb 16, 2023
@tjgq tjgq reopened this Feb 16, 2023
@tjgq tjgq removed the stale Issues or PRs that are stale (no activity for 30 days) label Feb 16, 2023
@sgowroji sgowroji added the not stale Issues or PRs that are inactive but not considered stale label Feb 16, 2023
@tjgq tjgq mentioned this issue Oct 20, 2023
12 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
not stale Issues or PRs that are inactive but not considered stale P3 We're not considering working on this, but happy to review a PR. (No assignee) team-Remote-Exec Issues and PRs for the Execution (Remote) team type: feature request
Projects
None yet
Development

No branches or pull requests

4 participants