summaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorArne H Juul <arnej@yahooinc.com>2021-10-13 07:33:50 +0000
committerArne H Juul <arnej@yahooinc.com>2021-10-13 08:51:35 +0000
commit8a23181a857c7c37bc1bdb226f31b479ac1217a7 (patch)
treec23f3e1ada00bc1a6b040728faca1c0f404992e1 /searchlib
parente255fb9334a566f7054e361bead06855b03c9ccc (diff)
only permit docsums as slime
* remove alternative with vector of binary blobs, we only use the "root slime" option now.
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/vespa/searchlib/engine/docsumreply.cpp9
-rw-r--r--searchlib/src/vespa/searchlib/engine/docsumreply.h22
2 files changed, 10 insertions, 21 deletions
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 <vespa/vespalib/data/slime/slime.h>
+#include <cassert>
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 <vespa/searchlib/engine/docsumrequest.h>
namespace vespalib { class Slime; }
+namespace vespalib::slime { struct Inspector; }
namespace search::engine {
struct DocsumReply
{
using UP = std::unique_ptr<DocsumReply>;
- 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<Docsum> docsums;
-
mutable DocsumRequest::UP request;
std::unique_ptr<vespalib::Slime> _root;
UniqueIssues::UP my_issues;
+ vespalib::slime::Inspector & root() const;
+
DocsumReply();
DocsumReply(std::unique_ptr<vespalib::Slime> root);
~DocsumReply();