diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2019-09-11 12:00:36 +0200 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2019-09-11 12:00:36 +0200 |
commit | b164411934e1d913050bdca7c09f6845b9af659c (patch) | |
tree | 582fa4ffc6d940fcfffca27216de94bb514e2d3e /container-search/src | |
parent | 13b0ce94162fb45fe904ee214a912f36f6650ec9 (diff) |
- query.setOffset(0) when you conduct a trim.
- Remove a clone that is not necessary.
Diffstat (limited to 'container-search/src')
3 files changed, 7 insertions, 2 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/cluster/ClusterSearcher.java b/container-search/src/main/java/com/yahoo/prelude/cluster/ClusterSearcher.java index 5130cf7ff34..e637e168030 100644 --- a/container-search/src/main/java/com/yahoo/prelude/cluster/ClusterSearcher.java +++ b/container-search/src/main/java/com/yahoo/prelude/cluster/ClusterSearcher.java @@ -414,7 +414,7 @@ public class ClusterSearcher extends Searcher { if (queries.size() == 1) { return searcher.search(queries.get(0), execution); } else { - Result mergedResult = new Result(query.clone()); + Result mergedResult = new Result(query); for (Query q : queries) { Result result = searcher.search(q, execution); mergedResult.mergeWith(result); @@ -427,6 +427,7 @@ public class ClusterSearcher extends Searcher { searcher.fill(mergedResult, Execution.ATTRIBUTEPREFETCH, execution); } mergedResult.hits().trim(query.getOffset(), query.getHits()); + query.setOffset(0); // Needed when doing a trim } return mergedResult; } diff --git a/container-search/src/main/java/com/yahoo/search/searchchain/testutil/DocumentSourceSearcher.java b/container-search/src/main/java/com/yahoo/search/searchchain/testutil/DocumentSourceSearcher.java index f4973ba4239..d39a488626b 100644 --- a/container-search/src/main/java/com/yahoo/search/searchchain/testutil/DocumentSourceSearcher.java +++ b/container-search/src/main/java/com/yahoo/search/searchchain/testutil/DocumentSourceSearcher.java @@ -105,6 +105,7 @@ public class DocumentSourceSearcher extends Searcher { r.setQuery(query); r.hits().trim(query.getOffset(), query.getHits()); + query.setOffset(0); return r; } diff --git a/container-search/src/test/java/com/yahoo/prelude/cluster/ClusterSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/cluster/ClusterSearcherTestCase.java index b537d03d823..86553a86add 100644 --- a/container-search/src/test/java/com/yahoo/prelude/cluster/ClusterSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/cluster/ClusterSearcherTestCase.java @@ -18,6 +18,7 @@ import com.yahoo.prelude.fastsearch.FastHit; import com.yahoo.prelude.fastsearch.VespaBackEndSearcher; import com.yahoo.prelude.fastsearch.test.MockMetric; import com.yahoo.search.Query; +import com.yahoo.search.Result; import com.yahoo.search.config.ClusterConfig; import com.yahoo.search.result.Hit; import com.yahoo.search.searchchain.Execution; @@ -354,7 +355,9 @@ public class ClusterSearcherTestCase { } private com.yahoo.search.Result getResult(int offset, int hits, Execution execution) { - return getResult(offset, hits, null, execution); + Result result = getResult(offset, hits, null, execution); + assertEquals(0, result.getQuery().getOffset()); + return result; } private com.yahoo.search.Result getResult(int offset, int hits, String extra, Execution execution) { |