-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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
retain the OutputStore when include scanning #7268
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this seems like a good change. any idea why it wasn't implemented like this to begin with? any tests we can add?
I think that TODO predated 6e9af75#diff-3f905f1f4fdd9e7e4c941d2e860c304a, and therefore wasn't trivial because OutputStore was not yet separated from ActionMetadataHandler. I didn't catch that we could resolve this TODO when I implemented the OutputStore. This looks like a good change to me, but I'm not as familiar with when this code path is triggered. |
I'm afraid I'm out of my depth here. Given that there are three engineers that feel that way other than the author of the change, how about declaring thta @buchgr did due diligence and just submitting it, then seeing what breaks? What about the same code in lines 574 and 652? https://github.com/bazelbuild/bazel/blob/master/src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionFunction.java#L652 |
this code path is triggered during include scanning which happens before any execution / metadata injection and so I believe re-creating the output store here is benign but should probably also be fixed for easier understanding of the code. This creates the metadatahandler with an outputstore for the first time. so this code path is the initialization logic and legit. @ericfelly I don't have a good way of testing this. This change is part of a list of changes making it possible to not download remote outputs and I ll be adding integration tests for this change along the way. |
@janakdr FYI |
@buchgr , you're indeed right re: line 574, I didn't read the code thoroughly enough. |
can this be imported? |
this avoids information loss about injected output metadata. this change resolves the TODO.
65b66d3
to
71055c9
Compare
yep. I am re-running CI after resolving merge conflicts. will import then. |
this avoids information loss about injected output
metadata. this change resolves the TODO.
Progress towards #6862