aboutsummaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests/queryeval
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2023-07-06 21:27:18 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2023-07-06 22:03:23 +0000
commit837d8d33eedafb409c351e8b1810116498804de8 (patch)
treec061af3b652d46b1dede3c088ed551294f2acb40 /searchlib/src/tests/queryeval
parent69c2cbf1e282ae2727b2ce1e761c0f99bd54f1e7 (diff)
Accumulate HitEstimate and apply when complete.
Diffstat (limited to 'searchlib/src/tests/queryeval')
-rw-r--r--searchlib/src/tests/queryeval/filter_search/filter_search_test.cpp12
-rw-r--r--searchlib/src/tests/queryeval/weighted_set_term/weighted_set_term_test.cpp4
2 files changed, 12 insertions, 4 deletions
diff --git a/searchlib/src/tests/queryeval/filter_search/filter_search_test.cpp b/searchlib/src/tests/queryeval/filter_search/filter_search_test.cpp
index ea4753ab847..8f2f8f2e96b 100644
--- a/searchlib/src/tests/queryeval/filter_search/filter_search_test.cpp
+++ b/searchlib/src/tests/queryeval/filter_search/filter_search_test.cpp
@@ -273,7 +273,9 @@ struct WeightedSetTermAdapter {
WeightedSetTermAdapter();
~WeightedSetTermAdapter();
void addChild(std::unique_ptr<Blueprint> child) {
- blueprint.addTerm(std::move(child), 100);
+ Blueprint::HitEstimate estimate = blueprint.getState().estimate();
+ blueprint.addTerm(std::move(child), 100, estimate);
+ blueprint.complete(estimate);
}
auto createFilterSearch(bool strict, Constraint constraint) const {
return blueprint.createFilterSearch(strict, constraint);
@@ -292,7 +294,9 @@ struct DotProductAdapter {
void addChild(std::unique_ptr<Blueprint> child) {
auto child_field = blueprint.getNextChildField(field);
auto term = std::make_unique<LeafProxy>(child_field, std::move(child));
- blueprint.addTerm(std::move(term), 100);
+ Blueprint::HitEstimate estimate = blueprint.getState().estimate();
+ blueprint.addTerm(std::move(term), 100, estimate);
+ blueprint.complete(estimate);
}
auto createFilterSearch(bool strict, Constraint constraint) const {
return blueprint.createFilterSearch(strict, constraint);
@@ -310,7 +314,9 @@ struct ParallelWeakAndAdapter {
void addChild(std::unique_ptr<Blueprint> child) {
auto child_field = blueprint.getNextChildField(field);
auto term = std::make_unique<LeafProxy>(child_field, std::move(child));
- blueprint.addTerm(std::move(term), 100);
+ Blueprint::HitEstimate estimate = blueprint.getState().estimate();
+ blueprint.addTerm(std::move(term), 100, estimate);
+ blueprint.complete(estimate);
}
auto createFilterSearch(bool strict, Constraint constraint) const {
return blueprint.createFilterSearch(strict, constraint);
diff --git a/searchlib/src/tests/queryeval/weighted_set_term/weighted_set_term_test.cpp b/searchlib/src/tests/queryeval/weighted_set_term/weighted_set_term_test.cpp
index 90e16d4feff..f93aa537625 100644
--- a/searchlib/src/tests/queryeval/weighted_set_term/weighted_set_term_test.cpp
+++ b/searchlib/src/tests/queryeval/weighted_set_term/weighted_set_term_test.cpp
@@ -312,9 +312,11 @@ TEST("require that children get a common (yet separate) term field match data")
auto top_handle = layout.allocTermField(42);
FieldSpec top_spec("foo", 42, top_handle);
WeightedSetTermBlueprint blueprint(top_spec);
+ queryeval::Blueprint::HitEstimate estimate;
for (size_t i = 0; i < 5; ++i) {
- blueprint.addTerm(vmd.create(blueprint.getNextChildField(top_spec)), 1);
+ blueprint.addTerm(vmd.create(blueprint.getNextChildField(top_spec)), 1, estimate);
}
+ blueprint.complete(estimate);
auto match_data = layout.createMatchData();
auto search = blueprint.createSearch(*match_data, true);
auto top_tfmd = match_data->resolveTermField(top_handle);