diff options
author | Jon Bratseth <bratseth@oath.com> | 2018-11-06 14:14:31 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-06 14:14:31 +0100 |
commit | e173db372c589cf933e47a1e1829befb4eba1568 (patch) | |
tree | 7899ab27dac8601ae4b20b3edb8f8b6fbd890fd9 /container-search | |
parent | bd33f31a8d764f2f6e8dab070a5ce3e84a81496b (diff) | |
parent | 23dea83ac813d3523dd5aefb422194be446d3188 (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.java | 12 |
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 |