From 8a23181a857c7c37bc1bdb226f31b479ac1217a7 Mon Sep 17 00:00:00 2001 From: Arne H Juul Date: Wed, 13 Oct 2021 07:33:50 +0000 Subject: only permit docsums as slime * remove alternative with vector of binary blobs, we only use the "root slime" option now. --- .../src/vespa/searchlib/engine/docsumreply.cpp | 9 +++++++-- searchlib/src/vespa/searchlib/engine/docsumreply.h | 22 +++------------------- 2 files changed, 10 insertions(+), 21 deletions(-) (limited to 'searchlib') diff --git a/searchlib/src/vespa/searchlib/engine/docsumreply.cpp b/searchlib/src/vespa/searchlib/engine/docsumreply.cpp index 24e21350088..d546e087bbf 100644 --- a/searchlib/src/vespa/searchlib/engine/docsumreply.cpp +++ b/searchlib/src/vespa/searchlib/engine/docsumreply.cpp @@ -2,17 +2,22 @@ #include "docsumreply.h" #include +#include namespace search::engine { DocsumReply::DocsumReply() : DocsumReply(vespalib::Slime::UP(nullptr)) { } DocsumReply::DocsumReply(vespalib::Slime::UP root) - : docsums(), - _root(std::move(root)) + : _root(std::move(root)) { } DocsumReply::~DocsumReply() { } +vespalib::slime::Inspector & DocsumReply::root() const { + assert(_root); + return _root->get(); +} + } diff --git a/searchlib/src/vespa/searchlib/engine/docsumreply.h b/searchlib/src/vespa/searchlib/engine/docsumreply.h index 42eec32dba6..10acd94a32a 100644 --- a/searchlib/src/vespa/searchlib/engine/docsumreply.h +++ b/searchlib/src/vespa/searchlib/engine/docsumreply.h @@ -10,35 +10,19 @@ #include namespace vespalib { class Slime; } +namespace vespalib::slime { struct Inspector; } namespace search::engine { struct DocsumReply { using UP = std::unique_ptr; - using Blob = vespalib::MallocPtr; - - struct Docsum { - document::GlobalId gid; - Blob data; - - Docsum() noexcept : gid(), data(0) {} - Docsum(document::GlobalId gid_) noexcept : gid(gid_), data(0) { } - Docsum(document::GlobalId gid_, const char *buf, uint32_t len) noexcept : gid(gid_), data(len) { - memcpy(data.str(), buf, len); - } - Docsum & setData(const char *buf, uint32_t len) { - data.resize(len); - memcpy(data.str(), buf, len); - return *this; - } - }; - std::vector docsums; - mutable DocsumRequest::UP request; std::unique_ptr _root; UniqueIssues::UP my_issues; + vespalib::slime::Inspector & root() const; + DocsumReply(); DocsumReply(std::unique_ptr root); ~DocsumReply(); -- cgit v1.2.3