summaryrefslogtreecommitdiffstats
path: root/container-search
diff options
context:
space:
mode:
authorOlli Virtanen <olli.virtanen@oath.com>2018-11-06 14:11:37 +0100
committerOlli Virtanen <olli.virtanen@oath.com>2018-11-06 14:11:37 +0100
commit23dea83ac813d3523dd5aefb422194be446d3188 (patch)
tree98a1e69a8233800123e0e7d5c1d10ae9a96ee79f /container-search
parent0e3add6b08f2a061018aedf59ac7883574867e92 (diff)
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