diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-09-02 14:59:41 +0200 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2022-09-02 15:13:34 +0200 |
commit | 84d36247026420bde80c60517f0a1d55e56de698 (patch) | |
tree | deac5b45685dd41b2b015d4b98d06cefc7964193 /container-search | |
parent | 74429c99871a4be6e4a9d08ae2c45ce1593e8c42 (diff) |
Send down summary-fields in present.
Diffstat (limited to 'container-search')
-rw-r--r-- | container-search/src/main/java/com/yahoo/vespa/streamingvisitors/VdsVisitor.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/container-search/src/main/java/com/yahoo/vespa/streamingvisitors/VdsVisitor.java b/container-search/src/main/java/com/yahoo/vespa/streamingvisitors/VdsVisitor.java index 8501c9664ef..85ef10b29f6 100644 --- a/container-search/src/main/java/com/yahoo/vespa/streamingvisitors/VdsVisitor.java +++ b/container-search/src/main/java/com/yahoo/vespa/streamingvisitors/VdsVisitor.java @@ -13,7 +13,7 @@ import com.yahoo.documentapi.messagebus.protocol.DocumentSummaryMessage; import com.yahoo.documentapi.messagebus.protocol.QueryResultMessage; import com.yahoo.documentapi.messagebus.protocol.SearchResultMessage; import com.yahoo.io.GrowableByteBuffer; -import java.util.logging.Level; + import com.yahoo.messagebus.Message; import com.yahoo.messagebus.Trace; import com.yahoo.messagebus.routing.Route; @@ -31,13 +31,14 @@ import com.yahoo.vespa.objects.BufferSerializer; import java.nio.ByteBuffer; import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collection; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; +import java.util.Collection; import java.util.concurrent.ConcurrentHashMap; import java.util.logging.Logger; +import java.util.logging.Level; /** * A visitor data handler that performs a query in VDS with the @@ -157,6 +158,10 @@ class VdsVisitor extends VisitorDataHandler implements Visitor { } else { params.setLibraryParameter("summaryclass", "default"); } + Set<String> summaryFields = query.getPresentation().getSummaryFields(); + if (summaryFields != null && !summaryFields.isEmpty()) { + params.setLibraryParameter("summary-fields", String.join(" ", summaryFields)); + } params.setLibraryParameter("summarycount", String.valueOf(query.getOffset() + query.getHits())); params.setLibraryParameter("rankprofile", query.getRanking().getProfile()); params.setLibraryParameter("allowslimedocsums", "true"); @@ -411,8 +416,7 @@ class VdsVisitor extends VisitorDataHandler implements Visitor { for (Grouping g : groupings) { g.postMerge(); } - Grouping[] array = groupings.toArray(new Grouping[groupings.size()]); - return Arrays.asList(array); + return new ArrayList<>(groupings); } } |