Page MenuHomePhabricator

D3487.id10761.diff
No OneTemporary

D3487.id10761.diff

diff --git a/services/backup/docker-server/contents/server/src/Reactors/client/blob/BlobPutClientReactor.h b/services/backup/docker-server/contents/server/src/Reactors/client/blob/BlobPutClientReactor.h
--- a/services/backup/docker-server/contents/server/src/Reactors/client/blob/BlobPutClientReactor.h
+++ b/services/backup/docker-server/contents/server/src/Reactors/client/blob/BlobPutClientReactor.h
@@ -36,7 +36,7 @@
public:
BlobPutClientReactor(const std::string &holder, const std::string &hash);
- void scheduleSendingDataChunk(const std::string &dataChunk);
+ void scheduleSendingDataChunk(std::string &dataChunk);
std::unique_ptr<grpc::Status> prepareRequest(
blob::PutRequest &request,
std::shared_ptr<blob::PutResponse> previousResponse) override;
@@ -50,12 +50,8 @@
dataChunks(folly::MPMCQueue<std::string>(100)) {
}
-void BlobPutClientReactor::scheduleSendingDataChunk(
- const std::string &dataChunk) {
- // TODO: we may be copying a big chunk of data, but `write` seems to only
- // accept `std::move`
- std::string str = std::string(dataChunk);
- if (!this->dataChunks.write(std::move(str))) {
+void BlobPutClientReactor::scheduleSendingDataChunk(std::string &dataChunk) {
+ if (!this->dataChunks.write(std::move(dataChunk))) {
throw std::runtime_error(
"Error scheduling sending a data chunk to send to the blob service");
}
diff --git a/services/backup/docker-server/contents/server/src/Reactors/server/CreateNewBackupReactor.h b/services/backup/docker-server/contents/server/src/Reactors/server/CreateNewBackupReactor.h
--- a/services/backup/docker-server/contents/server/src/Reactors/server/CreateNewBackupReactor.h
+++ b/services/backup/docker-server/contents/server/src/Reactors/server/CreateNewBackupReactor.h
@@ -75,7 +75,7 @@
}
ServiceBlobClient::getInstance().putReactor->scheduleSendingDataChunk(
- request.newcompactionchunk());
+ *request.mutable_newcompactionchunk());
return nullptr;
}
@@ -84,7 +84,9 @@
}
void CreateNewBackupReactor::doneCallback() {
- ServiceBlobClient::getInstance().putReactor->scheduleSendingDataChunk("");
+ std::string emptyString = "";
+ ServiceBlobClient::getInstance().putReactor->scheduleSendingDataChunk(
+ emptyString);
}
} // namespace reactor

File Metadata

Mime Type
text/plain
Expires
Mon, Oct 7, 9:31 AM (21 h, 10 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2253308
Default Alt Text
D3487.id10761.diff (2 KB)

Event Timeline