summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlberto Sartori <alberto.sartori@huawei.com>2023-12-20 16:52:23 +0100
committerAlberto Sartori <alberto.sartori@huawei.com>2023-12-21 10:11:11 +0100
commit8ee25f5ac4b1ecda1d5ce262fc48ad0c0e03a308 (patch)
treec54faf42ee85909dc4459ce6bdc6e44cddce33b4 /src
parent6c8230f3e3f48c7d02d7f885eeadfefe8545839f (diff)
downloadjustbuild-8ee25f5ac4b1ecda1d5ce262fc48ad0c0e03a308.tar.gz
BazelCasClient::DoUploadBlobs: returns the count of the uploaded blobs...
...instead of the vector containing the digests of the uploaded blobs. The returned vector was never inspected by the callers, except for its size. The tests have been accordingly amended.
Diffstat (limited to 'src')
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp16
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_cas_client.hpp9
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_network.cpp4
3 files changed, 13 insertions, 16 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 70ff27c4..36265890 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp
@@ -128,16 +128,14 @@ auto BazelCasClient::FindMissingBlobs(
auto BazelCasClient::BatchUpdateBlobs(
std::string const& instance_name,
std::vector<BazelBlob>::const_iterator const& begin,
- std::vector<BazelBlob>::const_iterator const& end) noexcept
- -> std::vector<bazel_re::Digest> {
+ std::vector<BazelBlob>::const_iterator const& end) noexcept -> std::size_t {
return DoBatchUpdateBlobs(instance_name, begin, end);
}
auto BazelCasClient::BatchUpdateBlobs(
std::string const& instance_name,
BlobContainer::iterator const& begin,
- BlobContainer::iterator const& end) noexcept
- -> std::vector<bazel_re::Digest> {
+ BlobContainer::iterator const& end) noexcept -> std::size_t {
return DoBatchUpdateBlobs(instance_name, begin, end);
}
@@ -145,7 +143,7 @@ auto BazelCasClient::BatchUpdateBlobs(
std::string const& instance_name,
BlobContainer::RelatedBlobList::iterator const& begin,
BlobContainer::RelatedBlobList::iterator const& end) noexcept
- -> std::vector<bazel_re::Digest> {
+ -> std::size_t {
return DoBatchUpdateBlobs(instance_name, begin, end);
}
@@ -401,11 +399,11 @@ template <class T_OutputIter>
auto BazelCasClient::DoBatchUpdateBlobs(std::string const& instance_name,
T_OutputIter const& start,
T_OutputIter const& end) noexcept
- -> std::vector<bazel_re::Digest> {
- std::vector<bazel_re::Digest> result;
+ -> std::size_t {
if (start == end) {
- return result;
+ return 0;
}
+ std::vector<bazel_re::Digest> result;
try {
auto requests =
CreateBatchRequestsMaxSize<bazel_re::BatchUpdateBlobsRequest>(
@@ -476,7 +474,7 @@ auto BazelCasClient::DoBatchUpdateBlobs(std::string const& instance_name,
return oss.str();
});
- return result;
+ return result.size();
}
namespace detail {
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_cas_client.hpp b/src/buildtool/execution_api/remote/bazel/bazel_cas_client.hpp
index 51cfbb50..c2567472 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_cas_client.hpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_cas_client.hpp
@@ -64,7 +64,7 @@ class BazelCasClient {
std::string const& instance_name,
std::vector<BazelBlob>::const_iterator const& begin,
std::vector<BazelBlob>::const_iterator const& end) noexcept
- -> std::vector<bazel_re::Digest>;
+ -> std::size_t;
/// \brief Upload multiple blobs in batch transfer
/// \param[in] instance_name Name of the CAS instance
@@ -74,8 +74,7 @@ class BazelCasClient {
[[nodiscard]] auto BatchUpdateBlobs(
std::string const& instance_name,
BlobContainer::iterator const& begin,
- BlobContainer::iterator const& end) noexcept
- -> std::vector<bazel_re::Digest>;
+ BlobContainer::iterator const& end) noexcept -> std::size_t;
/// \brief Upload multiple blobs in batch transfer
/// \param[in] instance_name Name of the CAS instance
@@ -86,7 +85,7 @@ class BazelCasClient {
std::string const& instance_name,
BlobContainer::RelatedBlobList::iterator const& begin,
BlobContainer::RelatedBlobList::iterator const& end) noexcept
- -> std::vector<bazel_re::Digest>;
+ -> std::size_t;
/// \brief Read multiple blobs in batch transfer
/// \param[in] instance_name Name of the CAS instance
@@ -152,7 +151,7 @@ class BazelCasClient {
[[nodiscard]] auto DoBatchUpdateBlobs(std::string const& instance_name,
T_OutputIter const& start,
T_OutputIter const& end) noexcept
- -> std::vector<bazel_re::Digest>;
+ -> std::size_t;
template <typename T_Request, typename T_ForwardIter>
[[nodiscard]] auto CreateBatchRequestsMaxSize(
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_network.cpp b/src/buildtool/execution_api/remote/bazel/bazel_network.cpp
index d6a5f78d..223960cb 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_network.cpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_network.cpp
@@ -174,10 +174,10 @@ auto BazelNetwork::DoUploadBlobs(T_Iter const& first,
sorted.begin(), sorted.end(), [](auto const& x) {
return x.data.size() <= kMaxBatchTransferSize;
});
- auto digests =
+ auto digests_count =
cas_->BatchUpdateBlobs(instance_name_, sorted.begin(), it);
- return digests.size() == std::distance(sorted.begin(), it) &&
+ return digests_count == std::distance(sorted.begin(), it) &&
std::all_of(it, sorted.end(), [this](auto const& x) {
return cas_->UpdateSingleBlob(instance_name_, x);
});