summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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
-rw-r--r--test/buildtool/execution_api/bazel/bazel_cas_client.test.cpp12
-rw-r--r--test/utils/remote_execution/bazel_action_creator.hpp4
5 files changed, 19 insertions, 26 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);
});
diff --git a/test/buildtool/execution_api/bazel/bazel_cas_client.test.cpp b/test/buildtool/execution_api/bazel/bazel_cas_client.test.cpp
index 8d21dbb3..d120360b 100644
--- a/test/buildtool/execution_api/bazel/bazel_cas_client.test.cpp
+++ b/test/buildtool/execution_api/bazel/bazel_cas_client.test.cpp
@@ -42,10 +42,8 @@ TEST_CASE("Bazel internals: CAS Client", "[execution_api]") {
if (!digests.empty()) {
// Upload blob, if not found
std::vector<BazelBlob> to_upload{blob};
- CHECK(cas_client
- .BatchUpdateBlobs(
- instance_name, to_upload.begin(), to_upload.end())
- .size() == 1);
+ CHECK(cas_client.BatchUpdateBlobs(
+ instance_name, to_upload.begin(), to_upload.end()) == 1U);
}
// Read blob
@@ -73,10 +71,8 @@ TEST_CASE("Bazel internals: CAS Client", "[execution_api]") {
// Try upload faulty blob
std::vector<BazelBlob> to_upload{faulty_blob};
- CHECK(cas_client
- .BatchUpdateBlobs(
- instance_name, to_upload.begin(), to_upload.end())
- .empty());
+ CHECK(cas_client.BatchUpdateBlobs(
+ instance_name, to_upload.begin(), to_upload.end()) == 0U);
// Read blob via faulty digest
std::vector<bazel_re::Digest> to_read{faulty_digest};
diff --git a/test/utils/remote_execution/bazel_action_creator.hpp b/test/utils/remote_execution/bazel_action_creator.hpp
index 0ee251c8..1fdc86c2 100644
--- a/test/utils/remote_execution/bazel_action_creator.hpp
+++ b/test/utils/remote_execution/bazel_action_creator.hpp
@@ -79,8 +79,8 @@
BazelCasClient cas_client(info->host, info->port);
- if (cas_client.BatchUpdateBlobs(instance_name, blobs.begin(), blobs.end())
- .size() == blobs.size()) {
+ if (cas_client.BatchUpdateBlobs(
+ instance_name, blobs.begin(), blobs.end()) == blobs.size()) {
return std::make_unique<bazel_re::Digest>(action_id);
}
return nullptr;