-
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
Bazel 7 unable to finalize action due to missing digest for .d
files when --experimental_inmemory_dotd_files
is set.
#22387
Comments
We looked for something that could go wrong with the combination of Can you provide the following information:
In addition, it would be helpful to know the following:
|
Thanks for investigating @tjgq I can provide the first two now and look at the execution log when I get a chance:
|
@luispadron Can you provide the |
Hi. We're also seeing this issue although it's very intermittent with only 6 builds out of 46,046 in the last week impacted. We're using a simple HTTP cache (nginx caching proxy in front of Artifactory) and are quite confident it's not a cache issue. I notice in your first message you jumped to Please let us know what additional information/logs would be helpful. |
@miscott2 I think the |
Oh wait, but if you're using an HTTP cache, there's no gRPC log; nevermind. |
@tjgq Since, as miscott2 says, we're using HTTP rather than GRPC, is there some other information that would be useful in that case? In one of your previous posts you asked if this could be reproduced using an HTTP cache, to which the answer very much appears to be "yes", so is there a way to gather useful info in that case? |
@NeilKetley What's the eviction policy for your HTTP cache? i.e., do you have any automated process that periodically removes old entries from the cache? Would you be able to confirm whether the blob in question was present in the cache at some point, but later got deleted? I'm wondering whether this might be just a special case of #18696. |
I'm going with the theory that this is the same as #18696, which has been fixed in 7.4.0. Please reopen if you're seeing similar failures in 7.4.0 or later. |
@tjgq apologies for not responding sooner. We are still attempting to repro and collect the information / answer the questions you posed previously. I do not think we will be able to try a later version of Bazel at this point since this issue is happening in our live build system, not really open for experimentation, but we will collect the info requested and hope that this will either confirm your suspicion or show otherwise. |
@tjgq We (if it wasn't clear Neil and I are colleagues) have just deployed Bazel 7.4.0 and we're looking at enabling We are obviously following up with our cache team about the eviction strategy but since we're using a "dumb" HTTP cache it's a bit complicated! |
I think failing to download in memory files always fails the build, no matter Looking forward to the result of your experiments! |
Sorry I wasn't able to get any more details about the root cause here. We've now updated to Thanks for fixing this and following up! |
@coeuvre Unfortunately it looks like we just hit this again in a Bazel 7.4.1 build on CI. It happened back-to-back over two builds:
|
Did you set The error might still happen because of cache eviction but combining retry and the fix mention above should allow builds to continue and re-upload the evicted files. |
Ah my bad I did not have |
So we had this on for a few weeks and things seemed generally stable but just had another instance where it failed, we are using
|
Description of the bug:
When using
--experimental_inmemory_dotd_files
which seems to be the default, at least in Bazel 7, the.d
file actions fail with a missing digest error.Which category does this issue belong to?
No response
What's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.
I haven't found a way to consistently reproduce this locally, our CI machines which are configured to:
Failed several times in our Bazel 7 testing, after setting
--noexperimental_inmemory_dotd_files
we no longer saw this issue.Which operating system are you running Bazel on?
macOS
What is the output of
bazel info release
?release 7.1.1
If
bazel info release
returnsdevelopment version
or(@non-git)
, tell us how you built Bazel.No response
What's the output of
git remote get-url origin; git rev-parse HEAD
?No response
Is this a regression? If yes, please try to identify the Bazel commit where the bug was introduced.
Yes, we've never seen this issue in Bazel 6 and not much has changed in our Bazel 7 testing in terms of flags.
Have you found anything relevant by searching the web?
Any other information, logs, or outputs that you want to share?
No response
The text was updated successfully, but these errors were encountered: