Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F2906419
D3487.id10761.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
2 KB
Referenced Files
None
Subscribers
None
D3487.id10761.diff
View Options
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
Details
Attached
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)
Attached To
Mode
D3487: [services] Backup - Fix copying big data chunk
Attached
Detach File
Event Timeline
Log In to Comment