summaryrefslogtreecommitdiffstats
path: root/container-search
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@oath.com>2018-11-06 14:14:31 +0100
committerGitHub <noreply@github.com>2018-11-06 14:14:31 +0100
commite173db372c589cf933e47a1e1829befb4eba1568 (patch)
tree7899ab27dac8601ae4b20b3edb8f8b6fbd890fd9 /container-search
parentbd33f31a8d764f2f6e8dab070a5ce3e84a81496b (diff)
parent23dea83ac813d3523dd5aefb422194be446d3188 (diff)
Merge pull request #7582 from vespa-engine/ollivir/avoid-query-clone
Avoid Query.clone which changes the sessionId (and the cache key)
Diffstat (limited to 'container-search')
-rw-r--r--container-search/src/main/java/com/yahoo/search/dispatch/InterleavedSearchInvoker.java12
1 files changed, 7 insertions, 5 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/dispatch/InterleavedSearchInvoker.java b/container-search/src/main/java/com/yahoo/search/dispatch/InterleavedSearchInvoker.java
index d80f3a49213..9ff43df87cf 100644
--- a/container-search/src/main/java/com/yahoo/search/dispatch/InterleavedSearchInvoker.java
+++ b/container-search/src/main/java/com/yahoo/search/dispatch/InterleavedSearchInvoker.java
@@ -33,13 +33,15 @@ public class InterleavedSearchInvoker extends SearchInvoker {
*/
@Override
protected void sendSearchRequest(Query query, QueryPacket queryPacket) throws IOException {
+ int originalHits = query.getHits();
+ int originalOffset = query.getOffset();
+ query.setHits(query.getHits() + query.getOffset());
+ query.setOffset(0);
for (SearchInvoker invoker : invokers) {
- Query subquery = query.clone();
-
- subquery.setHits(subquery.getHits() + subquery.getOffset());
- subquery.setOffset(0);
- invoker.sendSearchRequest(subquery, null);
+ invoker.sendSearchRequest(query, null);
}
+ query.setHits(originalHits);
+ query.setOffset(originalOffset);
}
@Override