aboutsummaryrefslogtreecommitdiffstats
path: root/storage
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2020-11-18 12:02:03 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2020-11-18 18:22:16 +0000
commiteb28759a307ff298e2125d6d3deff260c941ec45 (patch)
tree9644927a0452f8c17024b9f9784e6be1452bbfe2 /storage
parent5708135b1ddbac03f268b6235027c10121cb5ca4 (diff)
Explicit copy construction of Trace.
Diffstat (limited to 'storage')
-rw-r--r--storage/src/vespa/storage/storageserver/communicationmanager.cpp18
1 files changed, 9 insertions, 9 deletions
diff --git a/storage/src/vespa/storage/storageserver/communicationmanager.cpp b/storage/src/vespa/storage/storageserver/communicationmanager.cpp
index a35b9d1d59a..f0c62f128cf 100644
--- a/storage/src/vespa/storage/storageserver/communicationmanager.cpp
+++ b/storage/src/vespa/storage/storageserver/communicationmanager.cpp
@@ -102,7 +102,7 @@ CommunicationManager::handleMessage(std::unique_ptr<mbus::Message> msg)
return;
}
- cmd->setTrace(docMsgPtr->getTrace());
+ cmd->setTrace(vespalib::Trace(docMsgPtr->getTrace())); // Can it be moved ?
cmd->setTransportContext(std::make_unique<StorageTransportContext>(std::move(docMsgPtr)));
enqueue_or_process(std::move(cmd));
@@ -114,7 +114,7 @@ CommunicationManager::handleMessage(std::unique_ptr<mbus::Message> msg)
//TODO: Can it be moved ?
std::shared_ptr<api::StorageCommand> cmd = storMsgPtr->getCommand();
cmd->setTimeout(storMsgPtr->getTimeRemaining());
- cmd->setTrace(storMsgPtr->getTrace());
+ cmd->setTrace(vespalib::Trace(storMsgPtr->getTrace())); // Can it be moved ?
cmd->setTransportContext(std::make_unique<StorageTransportContext>(std::move(storMsgPtr)));
enqueue_or_process(std::move(cmd));
@@ -203,12 +203,12 @@ CommunicationManager::handleReply(std::unique_ptr<mbus::Reply> reply)
_docApiConverter.toStorageAPI(static_cast<documentapi::DocumentReply&>(*reply), *originalCommand));
if (sar) {
- sar->setTrace(reply->getTrace());
+ sar->setTrace(vespalib::Trace(reply->getTrace())); // Can it be moved ?
receiveStorageReply(sar);
}
} else if (protocolName == mbusprot::StorageProtocol::NAME) {
mbusprot::StorageReply* sr(static_cast<mbusprot::StorageReply*>(reply.get()));
- sr->getReply()->setTrace(reply->getTrace());
+ sr->getReply()->setTrace(vespalib::Trace(reply->getTrace()));
receiveStorageReply(sr->getReply());
} else {
LOGBM(warning, "Received unsupported reply type %d for protocol '%s'.",
@@ -583,7 +583,7 @@ CommunicationManager::sendCommand(
cmd->setContext(mbus::Context(msg->getMsgId()));
cmd->setRetryEnabled(false);
cmd->setTimeRemaining(msg->getTimeout());
- cmd->setTrace(msg->getTrace());
+ cmd->setTrace(vespalib::Trace(msg->getTrace())); //TODO Refactor so that we can move instead
sendMessageBusMessage(msg, std::move(cmd), address.getRoute());
}
break;
@@ -596,7 +596,7 @@ CommunicationManager::sendCommand(
if (mbusMsg) {
MBUS_TRACE(msg->getTrace(), 7, "Communication manager: Converted OK");
- mbusMsg->setTrace(msg->getTrace());
+ mbusMsg->setTrace(vespalib::Trace(msg->getTrace())); //TODO Refactor so that we can move instead
mbusMsg->setRetryEnabled(false);
{
@@ -690,13 +690,13 @@ CommunicationManager::sendMessageBusReply(
if (reply->getResult().getResult() == api::ReturnCode::WRONG_DISTRIBUTION) {
replyUP = std::make_unique<documentapi::WrongDistributionReply>(reply->getResult().getMessage());
replyUP->swapState(*context._docAPIMsg);
- replyUP->setTrace(reply->getTrace());
+ replyUP->setTrace(std::move(reply->getTrace()));
replyUP->addError(mbus::Error(documentapi::DocumentProtocol::ERROR_WRONG_DISTRIBUTION,
reply->getResult().getMessage()));
} else {
replyUP = context._docAPIMsg->createReply();
replyUP->swapState(*context._docAPIMsg);
- replyUP->setTrace(reply->getTrace());
+ replyUP->setTrace(std::move(reply->getTrace()));
replyUP->setMessage(std::move(context._docAPIMsg));
_docApiConverter.transferReplyState(*reply, *replyUP);
}
@@ -707,7 +707,7 @@ CommunicationManager::sendMessageBusReply(
}
replyUP->swapState(*context._storageProtocolMsg);
- replyUP->setTrace(reply->getTrace());
+ replyUP->setTrace(std::move(reply->getTrace()));
replyUP->setMessage(std::move(context._storageProtocolMsg));
}