aboutsummaryrefslogtreecommitdiffstats
path: root/container-search
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2017-08-16 11:14:41 +0200
committerHenning Baldersheim <balder@yahoo-inc.com>2017-08-16 11:14:41 +0200
commitc3e32e188c0e0d6dd06e6842a7a24579b11e249d (patch)
treef5273679d4d71d70d399c42e7ca983b6c15a12d6 /container-search
parent5d8d28cac163b560c83b91fa1429556c760115bb (diff)
Also propagate rank profile.
Diffstat (limited to 'container-search')
-rw-r--r--container-search/src/main/java/com/yahoo/search/dispatch/Dispatcher.java7
1 files changed, 5 insertions, 2 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/dispatch/Dispatcher.java b/container-search/src/main/java/com/yahoo/search/dispatch/Dispatcher.java
index e4292529add..47558b131a0 100644
--- a/container-search/src/main/java/com/yahoo/search/dispatch/Dispatcher.java
+++ b/container-search/src/main/java/com/yahoo/search/dispatch/Dispatcher.java
@@ -117,14 +117,14 @@ public class Dispatcher extends AbstractComponent {
}
Query query = result.getQuery();
- byte[] serializedSlime = BinaryFormat.encode(toSlime(summaryClass, query.getSessionId(false), hits));
+ byte[] serializedSlime = BinaryFormat.encode(toSlime(query.getRanking().getProfile(), summaryClass, query.getSessionId(false), hits));
double timeoutSeconds = ((double)query.getTimeLeft()-3.0)/1000.0;
Compressor.Compression compressionResult = compressor.compress(compression, serializedSlime);
client.getDocsums(hits, node, compressionResult.type(),
serializedSlime.length, compressionResult.data(), responseReceiver, timeoutSeconds);
}
- static private Slime toSlime(String summaryClass, SessionId sessionId, List<FastHit> hits) {
+ static private Slime toSlime(String rankProfile, String summaryClass, SessionId sessionId, List<FastHit> hits) {
Slime slime = new Slime();
Cursor root = slime.setObject();
if (summaryClass != null) {
@@ -133,6 +133,9 @@ public class Dispatcher extends AbstractComponent {
if (sessionId != null) {
root.setData("sessionid", sessionId.asUtf8String().getBytes());
}
+ if (rankProfile != null) {
+ root.setString("ranking", rankProfile);
+ }
Cursor gids = root.setArray("gids");
for (FastHit hit : hits) {
gids.addData(hit.getGlobalId().getRawId());