summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaksim Denisov <denisov.maksim@huawei.com>2025-02-07 17:31:56 +0100
committerMaksim Denisov <denisov.maksim@huawei.com>2025-02-10 17:59:50 +0100
commitcd9a10e8e0fd3eb3232b1f3fe8ac76bfe26371aa (patch)
treeae38359b8678f30ccadd211dc5151f9610a3a158 /src
parent417d7ab4db05b5f1a1cee464b7f43f09a8bc5568 (diff)
downloadjustbuild-cd9a10e8e0fd3eb3232b1f3fe8ac76bfe26371aa.tar.gz
BazelCasClient: FindMissingBlobs: consider missing digests from failed requests
Diffstat (limited to 'src')
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp b/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp
index 0ce8e67c..ceb446ac 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp
@@ -478,6 +478,12 @@ auto BazelCasClient::FindMissingBlobs(
else {
LogStatus(
&logger_, LogLevel::Error, status, "FindMissingBlobs");
+ // Failed to get a response. Mark all requested digests missing:
+ for (auto const& digest : request.blob_digests()) {
+ if (auto value = back_map->GetReference(digest)) {
+ result.emplace(*value.value());
+ }
+ }
}
}
logger_.Emit(LogLevel::Trace, [&digests, &result]() {