From eb28759a307ff298e2125d6d3deff260c941ec45 Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Wed, 18 Nov 2020 12:02:03 +0000 Subject: Explicit copy construction of Trace. --- storageapi/src/vespa/storageapi/messageapi/storagecommand.cpp | 3 ++- storageapi/src/vespa/storageapi/messageapi/storagemessage.h | 4 ++-- storageapi/src/vespa/storageapi/messageapi/storagereply.cpp | 3 ++- 3 files changed, 6 insertions(+), 4 deletions(-) (limited to 'storageapi/src') diff --git a/storageapi/src/vespa/storageapi/messageapi/storagecommand.cpp b/storageapi/src/vespa/storageapi/messageapi/storagecommand.cpp index 3e886ac872e..82d3dd8f6a8 100644 --- a/storageapi/src/vespa/storageapi/messageapi/storagecommand.cpp +++ b/storageapi/src/vespa/storageapi/messageapi/storagecommand.cpp @@ -11,8 +11,9 @@ StorageCommand::StorageCommand(const StorageCommand& other) _timeout(other._timeout), _sourceIndex(other._sourceIndex) { + // TODD do we really need copy construction, seems only use by CreateVisitorCommand ? if ( !other.getTrace().isEmpty()) { - setTrace(other.getTrace()); + setTrace(vespalib::Trace(other.getTrace())); } else { getTrace().setLevel(other.getTrace().getLevel()); } diff --git a/storageapi/src/vespa/storageapi/messageapi/storagemessage.h b/storageapi/src/vespa/storageapi/messageapi/storagemessage.h index 366ba684445..9135a6619ef 100644 --- a/storageapi/src/vespa/storageapi/messageapi/storagemessage.h +++ b/storageapi/src/vespa/storageapi/messageapi/storagemessage.h @@ -362,7 +362,7 @@ protected: Id _msgId; std::unique_ptr _address; documentapi::LoadType _loadType; - mbus::Trace _trace; + vespalib::Trace _trace; uint32_t _approxByteSize; Priority _priority; @@ -441,7 +441,7 @@ public: /** Sets the trace object for this message. */ - void setTrace(const mbus::Trace &trace) { _trace = trace; } + void setTrace(vespalib::Trace && trace) { _trace = std::move(trace); } /** * Cheap version of tostring(). diff --git a/storageapi/src/vespa/storageapi/messageapi/storagereply.cpp b/storageapi/src/vespa/storageapi/messageapi/storagereply.cpp index 57dab64e0bd..2bb9fabd7d5 100644 --- a/storageapi/src/vespa/storageapi/messageapi/storagereply.cpp +++ b/storageapi/src/vespa/storageapi/messageapi/storagereply.cpp @@ -14,8 +14,9 @@ StorageReply::StorageReply(const StorageCommand& cmd, ReturnCode code) if (cmd.getAddress()) { setAddress(*cmd.getAddress()); } + // TODD do we really need copy construction if ( ! cmd.getTrace().isEmpty()) { - setTrace(cmd.getTrace()); + setTrace(vespalib::Trace(cmd.getTrace())); } else { getTrace().setLevel(cmd.getTrace().getLevel()); } -- cgit v1.2.3