diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-09-01 21:55:30 +0200 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2022-09-01 22:19:25 +0200 |
commit | 1583768921c1703475458428c9faf5d88acdff27 (patch) | |
tree | 9cd27c2160acc40f92737a1edcbac50d5c32a9c1 /searchlib/src | |
parent | 36bead13fbbd0b3ce5c5a364b6f07ee1d3555b9b (diff) |
- Add fieldlist to docsum request.
- Only return fields requested from the backend.
Diffstat (limited to 'searchlib/src')
-rw-r--r-- | searchlib/src/protobuf/search_protocol.proto | 1 | ||||
-rw-r--r-- | searchlib/src/vespa/searchlib/engine/docsumrequest.cpp | 4 | ||||
-rw-r--r-- | searchlib/src/vespa/searchlib/engine/docsumrequest.h | 7 |
3 files changed, 9 insertions, 3 deletions
diff --git a/searchlib/src/protobuf/search_protocol.proto b/searchlib/src/protobuf/search_protocol.proto index b46287d8d71..3cf2f01a7a8 100644 --- a/searchlib/src/protobuf/search_protocol.proto +++ b/searchlib/src/protobuf/search_protocol.proto @@ -88,6 +88,7 @@ message DocsumRequest { string geo_location = 13; // to be moved into query_tree bytes query_tree_blob = 14; // serialized opaquely like now, to be changed later repeated bytes global_ids = 15; + repeated string fields = 16; } message DocsumReply { diff --git a/searchlib/src/vespa/searchlib/engine/docsumrequest.cpp b/searchlib/src/vespa/searchlib/engine/docsumrequest.cpp index 8b3325fbdd5..143f4586313 100644 --- a/searchlib/src/vespa/searchlib/engine/docsumrequest.cpp +++ b/searchlib/src/vespa/searchlib/engine/docsumrequest.cpp @@ -12,7 +12,9 @@ DocsumRequest::DocsumRequest() DocsumRequest::DocsumRequest(RelativeTime relativeTime) : Request(std::move(relativeTime)), resultClassName(), - hits() + hits(), + sessionId(), + _fields() { } diff --git a/searchlib/src/vespa/searchlib/engine/docsumrequest.h b/searchlib/src/vespa/searchlib/engine/docsumrequest.h index d4f3a1ec340..b53bac42cd3 100644 --- a/searchlib/src/vespa/searchlib/engine/docsumrequest.h +++ b/searchlib/src/vespa/searchlib/engine/docsumrequest.h @@ -15,6 +15,7 @@ public: using UP = std::unique_ptr<DocsumRequest>; using SP = std::shared_ptr<DocsumRequest>; using Source = LazySource<DocsumRequest>; + using FieldList = std::vector<vespalib::string>; class Hit { public: @@ -25,15 +26,17 @@ public: mutable uint32_t docid; // converted in backend }; -public: vespalib::string resultClassName; -public: std::vector<Hit> hits; std::vector<char> sessionId; DocsumRequest(); DocsumRequest(RelativeTime relativeTime); ~DocsumRequest() override; + const FieldList & getFields() const { return _fields; } + void setFields(FieldList fields) { _fields = std::move(fields); } +private: + FieldList _fields; }; } |