aboutsummaryrefslogtreecommitdiffstats
path: root/storage
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2020-11-18 18:15:45 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2020-11-18 18:22:16 +0000
commita330fa13973762f0b05e73c0ef3969fce28734fd (patch)
tree388443c8631a10816981c4181b260d9b8e0f87e1 /storage
parent78bfefbf3fd11a655560c7237bf4106aca2458b2 (diff)
Reduce exposure of TraceNode even further.
Diffstat (limited to 'storage')
-rw-r--r--storage/src/tests/visiting/memory_bounded_trace_test.cpp2
-rw-r--r--storage/src/vespa/storage/distributor/operations/external/getoperation.cpp4
-rw-r--r--storage/src/vespa/storage/distributor/operations/external/visitoroperation.h2
-rw-r--r--storage/src/vespa/storage/persistence/persistenceutil.cpp8
-rw-r--r--storage/src/vespa/storage/storageserver/rpc/storage_api_rpc_service.cpp2
-rw-r--r--storage/src/vespa/storage/visiting/memory_bounded_trace.cpp4
-rw-r--r--storage/src/vespa/storage/visiting/memory_bounded_trace.h8
-rw-r--r--storage/src/vespa/storage/visiting/visitor.cpp2
8 files changed, 11 insertions, 21 deletions
diff --git a/storage/src/tests/visiting/memory_bounded_trace_test.cpp b/storage/src/tests/visiting/memory_bounded_trace_test.cpp
index d0ea1172e11..e43fa702fb5 100644
--- a/storage/src/tests/visiting/memory_bounded_trace_test.cpp
+++ b/storage/src/tests/visiting/memory_bounded_trace_test.cpp
@@ -55,7 +55,7 @@ TEST(MemoryBoundedTraceTest, moved_trace_tree_is_marked_as_strict) {
mbus::Trace target;
trace.moveTraceTo(target);
EXPECT_EQ(1, target.getNumChildren());
- EXPECT_TRUE(target.getRoot().getChild(0).isStrict());
+ EXPECT_TRUE(target.getChild(0).isStrict());
}
TEST(MemoryBoundedTraceTest, can_not_add_more_nodes_when_memory_used_exceeds_upper_bound) {
diff --git a/storage/src/vespa/storage/distributor/operations/external/getoperation.cpp b/storage/src/vespa/storage/distributor/operations/external/getoperation.cpp
index 8f47798848a..3adc8d731ee 100644
--- a/storage/src/vespa/storage/distributor/operations/external/getoperation.cpp
+++ b/storage/src/vespa/storage/distributor/operations/external/getoperation.cpp
@@ -144,9 +144,7 @@ GetOperation::onReceive(DistributorMessageSender& sender, const std::shared_ptr<
LOG(debug, "Received %s", msg->toString(true).c_str());
- if ( ! getreply->getTrace().isEmpty()) {
- _msg->getTrace().addChild(std::move(getreply->getTrace()));
- }
+ _msg->getTrace().addChild(std::move(getreply->getTrace()));
bool allDone = true;
for (auto& response : _responses) {
for (uint32_t i = 0; i < response.second.size(); i++) {
diff --git a/storage/src/vespa/storage/distributor/operations/external/visitoroperation.h b/storage/src/vespa/storage/distributor/operations/external/visitoroperation.h
index 42b0bd56b9e..24c7157b481 100644
--- a/storage/src/vespa/storage/distributor/operations/external/visitoroperation.h
+++ b/storage/src/vespa/storage/distributor/operations/external/visitoroperation.h
@@ -38,7 +38,7 @@ public:
const Config& config,
VisitorMetricSet& metrics);
- ~VisitorOperation();
+ ~VisitorOperation() override;
void onClose(DistributorMessageSender& sender) override;
void onStart(DistributorMessageSender& sender) override;
diff --git a/storage/src/vespa/storage/persistence/persistenceutil.cpp b/storage/src/vespa/storage/persistence/persistenceutil.cpp
index 96a24134e5f..d41ec4e88d6 100644
--- a/storage/src/vespa/storage/persistence/persistenceutil.cpp
+++ b/storage/src/vespa/storage/persistence/persistenceutil.cpp
@@ -93,9 +93,7 @@ MessageTracker::sendReply() {
_msg->toString(true).c_str(), vespalib::to_s(duration));
}
if (hasReply()) {
- if ( ! _context.getTrace().isEmpty()) {
- getReply().getTrace().addChild(std::move(_context.getTrace()));
- }
+ getReply().getTrace().addChild(std::move(_context.getTrace()));
if (_updateBucketInfo) {
if (getReply().getResult().success()) {
_env.setBucketInfo(*this, _bucketLock->getBucket());
@@ -107,9 +105,7 @@ MessageTracker::sendReply() {
LOG(spam, "Sending reply up: %s %" PRIu64, getReply().toString().c_str(), getReply().getMsgId());
_replySender.sendReplyDirectly(std::move(_reply));
} else {
- if ( ! _context.getTrace().isEmpty()) {
- _msg->getTrace().addChild(std::move(_context.getTrace()));
- }
+ _msg->getTrace().addChild(std::move(_context.getTrace()));
}
}
diff --git a/storage/src/vespa/storage/storageserver/rpc/storage_api_rpc_service.cpp b/storage/src/vespa/storage/storageserver/rpc/storage_api_rpc_service.cpp
index eaba3d54c27..c465315a5a6 100644
--- a/storage/src/vespa/storage/storageserver/rpc/storage_api_rpc_service.cpp
+++ b/storage/src/vespa/storage/storageserver/rpc/storage_api_rpc_service.cpp
@@ -208,7 +208,7 @@ void StorageApiRpcService::encode_rpc_v1_response(FRT_RPCRequest& request, api::
// TODO skip encoding header altogether if no relevant fields set?
protobuf::ResponseHeader hdr;
if (reply.getTrace().getLevel() > 0) {
- hdr.set_trace_payload(reply.getTrace().getRoot().encode());
+ hdr.set_trace_payload(reply.getTrace().encode());
}
// TODO consistent naming...
encode_header_into_rpc_params(hdr, *ret);
diff --git a/storage/src/vespa/storage/visiting/memory_bounded_trace.cpp b/storage/src/vespa/storage/visiting/memory_bounded_trace.cpp
index bfa4c2aa07d..d93a461f217 100644
--- a/storage/src/vespa/storage/visiting/memory_bounded_trace.cpp
+++ b/storage/src/vespa/storage/visiting/memory_bounded_trace.cpp
@@ -33,8 +33,10 @@ computeTraceTreeMemoryUsage(const mbus::TraceNode& node)
} // anon ns
bool
-MemoryBoundedTrace::add(const mbus::TraceNode& node)
+MemoryBoundedTrace::add(const mbus::Trace& trace)
{
+ if (trace.isEmpty()) return false;
+ const vespalib::TraceNode & node = trace.getRoot();
const size_t nodeFootprint = computeTraceTreeMemoryUsage(node);
if (_currentMemoryUsed >= _softMemoryUpperBound) {
diff --git a/storage/src/vespa/storage/visiting/memory_bounded_trace.h b/storage/src/vespa/storage/visiting/memory_bounded_trace.h
index a7f8a00d6a9..f376b41a4f5 100644
--- a/storage/src/vespa/storage/visiting/memory_bounded_trace.h
+++ b/storage/src/vespa/storage/visiting/memory_bounded_trace.h
@@ -22,13 +22,7 @@ public:
* Returns true if `node` was added to internal trace state, false
* otherwise.
*/
- bool add(const mbus::TraceNode& node);
- bool add(const mbus::Trace& trace) {
- if (!trace.isEmpty()) {
- return add(trace.getRoot());
- }
- return false;
- }
+ bool add(const mbus::Trace& node);
/**
* Append current trace tree to the output trace node and clear internal
diff --git a/storage/src/vespa/storage/visiting/visitor.cpp b/storage/src/vespa/storage/visiting/visitor.cpp
index 26efaf323e0..c7825cd2e6f 100644
--- a/storage/src/vespa/storage/visiting/visitor.cpp
+++ b/storage/src/vespa/storage/visiting/visitor.cpp
@@ -601,7 +601,7 @@ bool
Visitor::addBoundedTrace(uint32_t level, const vespalib::string &message) {
mbus::Trace tempTrace;
tempTrace.trace(level, message);
- return _trace.add(tempTrace.getRoot());
+ return _trace.add(tempTrace);
}
void