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

Provide OutputService and InjectionListener implementation #5505

Closed
werkt opened this issue Jul 2, 2018 · 8 comments
Closed

Provide OutputService and InjectionListener implementation #5505

werkt opened this issue Jul 2, 2018 · 8 comments

Comments

@werkt
Copy link
Contributor

werkt commented Jul 2, 2018

Description of the problem / feature request:

Implement the output service consistent with the execution strategy module, and re-release the ActionFileSystem to satisfy its requirements.

Feature requests: what underlying problem are you trying to solve with this feature?

The integration of OutputService, an ActionFileSystem (now redacted), and InjectionListeners are non-public, with their intended connectivity unclear. In trying to improve the behavior of the remote caching/execution client, these interfaces serve a clear purpose, but a registration system or example for these is missing.

What operating system are you running Bazel on?

Ubuntu 18.04

What's the output of bazel info release?

0.15.0

Have you found anything relevant by searching the web?

A revert of e35e8cf is a start here, but there is similarly nothing documented publicly regarding the implementation of skyframe's interaction with the output service or created filesystem (since there is no output service implementation today).

Any other information, logs, or outputs that you want to share?

This issue is to document a request by myself after discussing the nature of this work with @janakdr and shahan. While I have implemented the connections between the relevant actors, I expect that any implementation of a listener or filesystem metadata registration will clash with internals and be unlikely to be accepted without being a pure specialization of a smaller scoped improvement which interacted with internally defined registrars.

@werkt
Copy link
Contributor Author

werkt commented Jul 2, 2018

A perfectly acceptable first step here would be to follow through on comments in code, compelling skyframe to only interact with OutputService and its created FileSystem for all operations.

@lfpino
Copy link
Contributor

lfpino commented Jul 4, 2018

Assigning to @janakdr for triage.

@ulfjack
Copy link
Contributor

ulfjack commented Jul 20, 2018

There's also #1922.

@ulfjack
Copy link
Contributor

ulfjack commented Jul 20, 2018

If you have an implementation of this, how about sharing it? We may have two or three parties interested in implementing changes to avoid downloading intermediate files.

@werkt
Copy link
Contributor Author

werkt commented Jul 20, 2018 via email

@buchgr buchgr self-assigned this Jul 31, 2018
@buchgr buchgr added this to the Remote Execution milestone Aug 6, 2018
@werkt
Copy link
Contributor Author

werkt commented Aug 21, 2018

I have prepared a design doc for this implementation, and will be sharing this with the bazel mailing lists. After discussions with @buchgr who also spoke with @janakdr, I am anxiously awaiting the reopening of the ActionFileSystem implementation, and am moving forward.

https://docs.google.com/document/d/1FDPMQd70fA5tM9JkWeT9tWKACGZgHXdXTVz8Jel1OZg/edit?usp=sharing

@buchgr
Copy link
Contributor

buchgr commented Aug 21, 2018

Hi George, sorry for the delay with open sourcing ActionFS. I ll be back in the office tomorrow.

@buchgr
Copy link
Contributor

buchgr commented Jan 16, 2019

Closing this in favor of #6862

@buchgr buchgr closed this as completed Jan 16, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants