summaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests/attribute
diff options
context:
space:
mode:
authorHåvard Pettersen <havardpe@yahooinc.com>2024-03-14 12:40:34 +0000
committerHåvard Pettersen <havardpe@yahooinc.com>2024-03-20 12:59:59 +0000
commit97da6db442eb0385571f834c75a8d65bd239c620 (patch)
treeb78347b8987ad09d7340b42ffdbe445438daf020 /searchlib/src/tests/attribute
parent7938460dd3b3d72ec1900febe29c1a94db964648 (diff)
tag blueprints with strictness
The strict-aware sort function is responsible for propagating and tagging strictness throughout the blueprint tree. Use pre-tagged strictness in fetchPostings, createSearch and createFilterSearch.
Diffstat (limited to 'searchlib/src/tests/attribute')
-rw-r--r--searchlib/src/tests/attribute/benchmark/attributesearcher.h6
-rw-r--r--searchlib/src/tests/attribute/bitvector/bitvector_test.cpp2
-rw-r--r--searchlib/src/tests/attribute/direct_multi_term_blueprint/direct_multi_term_blueprint_test.cpp6
-rw-r--r--searchlib/src/tests/attribute/enumeratedsave/enumeratedsave_test.cpp2
-rw-r--r--searchlib/src/tests/attribute/imported_search_context/imported_search_context_test.cpp22
-rw-r--r--searchlib/src/tests/attribute/postinglistattribute/postinglistattribute_test.cpp12
-rw-r--r--searchlib/src/tests/attribute/searchable/attribute_searchable_adapter_test.cpp5
-rw-r--r--searchlib/src/tests/attribute/searchable/attribute_weighted_set_blueprint_test.cpp10
-rw-r--r--searchlib/src/tests/attribute/searchable/attributeblueprint_test.cpp16
-rw-r--r--searchlib/src/tests/attribute/searchcontext/searchcontext_test.cpp22
10 files changed, 53 insertions, 50 deletions
diff --git a/searchlib/src/tests/attribute/benchmark/attributesearcher.h b/searchlib/src/tests/attribute/benchmark/attributesearcher.h
index a383b22e22f..6b8ccc5de59 100644
--- a/searchlib/src/tests/attribute/benchmark/attributesearcher.h
+++ b/searchlib/src/tests/attribute/benchmark/attributesearcher.h
@@ -140,7 +140,7 @@ AttributeFindSearcher<T>::doRun()
_attrPtr->getSearch(vespalib::stringref(&_query[0], _query.size()),
attribute::SearchContextParams());
- searchContext->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ searchContext->fetchPostings(queryeval::ExecuteInfo::FULL, true);
std::unique_ptr<queryeval::SearchIterator> iterator = searchContext->createIterator(nullptr, true);
std::unique_ptr<ResultSet> results = performSearch(*iterator, _attrPtr->getNumDocs());
@@ -218,7 +218,7 @@ AttributeRangeSearcher::doRun()
_attrPtr->getSearch(vespalib::stringref(&_query[0], _query.size()),
attribute::SearchContextParams());
- searchContext->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ searchContext->fetchPostings(queryeval::ExecuteInfo::FULL, true);
std::unique_ptr<queryeval::SearchIterator> iterator = searchContext->createIterator(nullptr, true);
std::unique_ptr<ResultSet> results = performSearch(*iterator, _attrPtr->getNumDocs());
@@ -257,7 +257,7 @@ AttributePrefixSearcher::doRun()
_attrPtr->getSearch(vespalib::stringref(&_query[0], _query.size()),
attribute::SearchContextParams());
- searchContext->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ searchContext->fetchPostings(queryeval::ExecuteInfo::FULL, true);
std::unique_ptr<queryeval::SearchIterator> iterator = searchContext->createIterator(nullptr, true);
std::unique_ptr<ResultSet> results = performSearch(*iterator, _attrPtr->getNumDocs());
diff --git a/searchlib/src/tests/attribute/bitvector/bitvector_test.cpp b/searchlib/src/tests/attribute/bitvector/bitvector_test.cpp
index f9e6340560f..0e7308d0ede 100644
--- a/searchlib/src/tests/attribute/bitvector/bitvector_test.cpp
+++ b/searchlib/src/tests/attribute/bitvector/bitvector_test.cpp
@@ -426,7 +426,7 @@ BitVectorTest::checkSearch(AttributePtr v,
bool checkStride)
{
TermFieldMatchData md;
- sc->fetchPostings(search::queryeval::ExecuteInfo::TRUE);
+ sc->fetchPostings(search::queryeval::ExecuteInfo::FULL, true);
SearchBasePtr sb = sc->createIterator(&md, true);
checkSearch(std::move(v), std::move(sb), md,
expFirstDocId, expLastDocId, expDocFreq, weights,
diff --git a/searchlib/src/tests/attribute/direct_multi_term_blueprint/direct_multi_term_blueprint_test.cpp b/searchlib/src/tests/attribute/direct_multi_term_blueprint/direct_multi_term_blueprint_test.cpp
index 87b771af8e6..1d66c59d2c9 100644
--- a/searchlib/src/tests/attribute/direct_multi_term_blueprint/direct_multi_term_blueprint_test.cpp
+++ b/searchlib/src/tests/attribute/direct_multi_term_blueprint/direct_multi_term_blueprint_test.cpp
@@ -222,7 +222,6 @@ public:
} else {
validate_posting_lists<StringKey>(*store);
}
- blueprint->setDocIdLimit(doc_id_limit);
if (need_term_field_match_data) {
tfmd.needs_normal_features();
} else {
@@ -263,8 +262,9 @@ public:
add_term(value);
}
}
- std::unique_ptr<SearchIterator> create_leaf_search(bool strict = true) const {
- return blueprint->createLeafSearch(tfmda, strict);
+ std::unique_ptr<SearchIterator> create_leaf_search(bool strict = true) {
+ blueprint->basic_plan(strict, doc_id_limit);
+ return blueprint->createLeafSearch(tfmda);
}
vespalib::string resolve_iterator_with_unpack() const {
if (in_operator) {
diff --git a/searchlib/src/tests/attribute/enumeratedsave/enumeratedsave_test.cpp b/searchlib/src/tests/attribute/enumeratedsave/enumeratedsave_test.cpp
index df58e839180..0795d85e4a2 100644
--- a/searchlib/src/tests/attribute/enumeratedsave/enumeratedsave_test.cpp
+++ b/searchlib/src/tests/attribute/enumeratedsave/enumeratedsave_test.cpp
@@ -665,7 +665,7 @@ EnumeratedSaveTest::testReload(AttributePtr v0,
TermFieldMatchData md;
SearchContextPtr sc = getSearch<VectorType>(as<VectorType>(v));
- sc->fetchPostings(search::queryeval::ExecuteInfo::TRUE);
+ sc->fetchPostings(search::queryeval::ExecuteInfo::FULL, true);
SearchBasePtr sb = sc->createIterator(&md, true);
sb->initFullRange();
sb->seek(1u);
diff --git a/searchlib/src/tests/attribute/imported_search_context/imported_search_context_test.cpp b/searchlib/src/tests/attribute/imported_search_context/imported_search_context_test.cpp
index 93ae9cb13cb..41ec377dece 100644
--- a/searchlib/src/tests/attribute/imported_search_context/imported_search_context_test.cpp
+++ b/searchlib/src/tests/attribute/imported_search_context/imported_search_context_test.cpp
@@ -271,7 +271,7 @@ TEST_F("Non-strict iterator unpacks target match data for weighted set hit", Wse
TEST_F("Strict iterator is marked as strict", Fixture) {
auto ctx = f.create_context(word_term("5678"));
- ctx->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ ctx->fetchPostings(queryeval::ExecuteInfo::FULL, true);
TermFieldMatchData match;
auto iter = f.create_strict_iterator(*ctx, match);
@@ -280,7 +280,7 @@ TEST_F("Strict iterator is marked as strict", Fixture) {
TEST_F("Non-strict blueprint with high hit rate is strict", Fixture(false, FastSearchConfig::ExplicitlyEnabled)) {
auto ctx = f.create_context(word_term("5678"));
- ctx->fetchPostings(queryeval::ExecuteInfo::createForTest(false, 0.02));
+ ctx->fetchPostings(queryeval::ExecuteInfo::createForTest(0.02), false);
TermFieldMatchData match;
auto iter = f.create_iterator(*ctx, match, false);
@@ -289,7 +289,7 @@ TEST_F("Non-strict blueprint with high hit rate is strict", Fixture(false, FastS
TEST_F("Non-strict blueprint with low hit rate is non-strict", Fixture(false, FastSearchConfig::ExplicitlyEnabled)) {
auto ctx = f.create_context(word_term("5678"));
- ctx->fetchPostings(queryeval::ExecuteInfo::createForTest(false, 0.01));
+ ctx->fetchPostings(queryeval::ExecuteInfo::createForTest(0.01), false);
TermFieldMatchData match;
auto iter = f.create_iterator(*ctx, match, false);
@@ -314,7 +314,7 @@ SingleValueFixture::~SingleValueFixture() = default;
TEST_F("Strict iterator seeks to first available hit LID", SingleValueFixture) {
auto ctx = f.create_context(word_term("5678"));
- ctx->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ ctx->fetchPostings(queryeval::ExecuteInfo::FULL, true);
TermFieldMatchData match;
auto iter = f.create_strict_iterator(*ctx, match);
@@ -340,7 +340,7 @@ TEST_F("Strict iterator seeks to first available hit LID", SingleValueFixture) {
TEST_F("Strict iterator unpacks target match data for single value hit", SingleValueFixture) {
auto ctx = f.create_context(word_term("5678"));
- ctx->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ ctx->fetchPostings(queryeval::ExecuteInfo::FULL, true);
TermFieldMatchData match;
auto iter = f.create_strict_iterator(*ctx, match);
@@ -352,7 +352,7 @@ TEST_F("Strict iterator unpacks target match data for single value hit", SingleV
TEST_F("Strict iterator unpacks target match data for array hit", ArrayValueFixture) {
auto ctx = f.create_context(word_term("1234"));
- ctx->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ ctx->fetchPostings(queryeval::ExecuteInfo::FULL, true);
TermFieldMatchData match;
auto iter = f.create_strict_iterator(*ctx, match);
@@ -364,7 +364,7 @@ TEST_F("Strict iterator unpacks target match data for array hit", ArrayValueFixt
TEST_F("Strict iterator unpacks target match data for weighted set hit", WsetValueFixture) {
auto ctx = f.create_context(word_term("foo"));
- ctx->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ ctx->fetchPostings(queryeval::ExecuteInfo::FULL, true);
TermFieldMatchData match;
auto iter = f.create_strict_iterator(*ctx, match);
@@ -375,7 +375,7 @@ TEST_F("Strict iterator unpacks target match data for weighted set hit", WsetVal
TEST_F("Strict iterator handles seek outside of LID space", ArrayValueFixture) {
auto ctx = f.create_context(word_term("1234"));
- ctx->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ ctx->fetchPostings(queryeval::ExecuteInfo::FULL, true);
TermFieldMatchData match;
auto iter = f.create_strict_iterator(*ctx, match);
@@ -407,7 +407,7 @@ TEST_F("matches(weight) performs GID mapping and forwards to target attribute",
TEST_F("Multiple iterators can be created from the same context", SingleValueFixture) {
auto ctx = f.create_context(word_term("5678"));
- ctx->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ ctx->fetchPostings(queryeval::ExecuteInfo::FULL, true);
TermFieldMatchData match1;
auto iter1 = f.create_strict_iterator(*ctx, match1);
@@ -490,7 +490,7 @@ TEST_F("Bit vector from search cache is used if found", SearchCacheFixture)
f.imported_attr->getSearchCache()->insert("5678",
makeSearchCacheEntry({2, 6}, f.get_imported_attr()->getNumDocs()));
auto ctx = f.create_context(word_term("5678"));
- ctx->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ ctx->fetchPostings(queryeval::ExecuteInfo::FULL, true);
TermFieldMatchData match;
auto iter = f.create_strict_iterator(*ctx, match);
TEST_DO(f.assertSearch({2, 6}, *iter)); // Note: would be {3, 5} if cache was not used
@@ -509,7 +509,7 @@ TEST_F("Entry is inserted into search cache if bit vector posting list is used",
{
EXPECT_EQUAL(0u, f.imported_attr->getSearchCache()->size());
auto ctx = f.create_context(word_term("5678"));
- ctx->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ ctx->fetchPostings(queryeval::ExecuteInfo::FULL, true);
TermFieldMatchData match;
auto iter = f.create_strict_iterator(*ctx, match);
TEST_DO(f.assertSearch({3, 5}, *iter));
diff --git a/searchlib/src/tests/attribute/postinglistattribute/postinglistattribute_test.cpp b/searchlib/src/tests/attribute/postinglistattribute/postinglistattribute_test.cpp
index ed91cefd35c..8da9b4466d7 100644
--- a/searchlib/src/tests/attribute/postinglistattribute/postinglistattribute_test.cpp
+++ b/searchlib/src/tests/attribute/postinglistattribute/postinglistattribute_test.cpp
@@ -378,7 +378,7 @@ PostingListAttributeTest::assertSearch(const std::string &exp, StringAttribute &
{
TermFieldMatchData md;
SearchContextPtr sc = getSearch<StringAttribute>(sa);
- sc->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ sc->fetchPostings(queryeval::ExecuteInfo::FULL, true);
SearchBasePtr sb = sc->createIterator(&md, true);
bool retval = true;
EXPECT_TRUE(assertIterator(exp, *sb)) << (retval = false, "");
@@ -391,7 +391,7 @@ PostingListAttributeTest::assertSearch(const std::string &exp, StringAttribute &
{
TermFieldMatchData md;
SearchContextPtr sc = getSearch<StringAttribute, std::string>(sa, key, false);
- sc->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ sc->fetchPostings(queryeval::ExecuteInfo::FULL, true);
SearchBasePtr sb = sc->createIterator(&md, true);
bool retval = true;
EXPECT_TRUE(assertIterator(exp, *sb, &md)) << (retval = false, "");
@@ -403,7 +403,7 @@ PostingListAttributeTest::assertSearch(const std::string &exp, IntegerAttribute
{
TermFieldMatchData md;
SearchContextPtr sc = getSearch<IntegerAttribute, int32_t>(ia, key, false);
- sc->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ sc->fetchPostings(queryeval::ExecuteInfo::FULL, true);
SearchBasePtr sb = sc->createIterator(&md, true);
bool retval = true;
EXPECT_TRUE(assertIterator(exp, *sb, &md)) << (retval = false, "");
@@ -497,7 +497,7 @@ PostingListAttributeTest::checkSearch(bool useBitVector, bool need_unpack, bool
{
SearchContextPtr sc = getSearch(vec, term, false, attribute::SearchContextParams().useBitVector(useBitVector));
EXPECT_FALSE( ! sc );
- sc->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ sc->fetchPostings(queryeval::ExecuteInfo::FULL, true);
auto est = sc->calc_hit_estimate();
uint32_t est_hits = est.est_hits();
EXPECT_FALSE(est.is_unknown());
@@ -912,7 +912,7 @@ PostingListAttributeTest::testMinMax(AttributePtr &ptr1, uint32_t trimmed)
{
TermFieldMatchData md;
SearchContextPtr sc = getSearch<VectorType>(as<VectorType>(ptr1));
- sc->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ sc->fetchPostings(queryeval::ExecuteInfo::FULL, true);
SearchBasePtr sb = sc->createIterator(&md, true);
sb->initFullRange();
@@ -937,7 +937,7 @@ PostingListAttributeTest::testMinMax(AttributePtr &ptr1, uint32_t trimmed)
EXPECT_EQ(1u, sb->getDocId());
sc = getSearch2<VectorType>(as<VectorType>(ptr1));
- sc->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ sc->fetchPostings(queryeval::ExecuteInfo::FULL, true);
sb = sc->createIterator(&md, true);
sb->initFullRange();
diff --git a/searchlib/src/tests/attribute/searchable/attribute_searchable_adapter_test.cpp b/searchlib/src/tests/attribute/searchable/attribute_searchable_adapter_test.cpp
index 3b346601245..bc360e635c1 100644
--- a/searchlib/src/tests/attribute/searchable/attribute_searchable_adapter_test.cpp
+++ b/searchlib/src/tests/attribute/searchable/attribute_searchable_adapter_test.cpp
@@ -223,8 +223,9 @@ Result do_search(IAttributeManager &attribute_manager, const Node &node, bool st
Blueprint::UP bp = source.createBlueprint(requestContext, FieldSpec(field, fieldId, handle), node);
ASSERT_TRUE(bp);
Result result(bp->getState().estimate().estHits, bp->getState().estimate().empty);
- bp->fetchPostings(queryeval::ExecuteInfo::createForTest(strict));
- SearchIterator::UP iterator = bp->createSearch(*match_data, strict);
+ bp->basic_plan(strict, 100);
+ bp->fetchPostings(queryeval::ExecuteInfo::FULL);
+ SearchIterator::UP iterator = bp->createSearch(*match_data);
ASSERT_TRUE(iterator);
iterator->initRange(1, num_docs);
extract_posting_info(result, iterator->getPostingInfo());
diff --git a/searchlib/src/tests/attribute/searchable/attribute_weighted_set_blueprint_test.cpp b/searchlib/src/tests/attribute/searchable/attribute_weighted_set_blueprint_test.cpp
index a8630ea569e..7a794795cce 100644
--- a/searchlib/src/tests/attribute/searchable/attribute_weighted_set_blueprint_test.cpp
+++ b/searchlib/src/tests/attribute/searchable/attribute_weighted_set_blueprint_test.cpp
@@ -111,8 +111,9 @@ struct WS {
FieldSpecList fields;
fields.add(FieldSpec(field, fieldId, handle, ac.getAttribute(field)->getIsFilter()));
queryeval::Blueprint::UP bp = searchable.createBlueprint(requestContext, fields, *node);
- bp->fetchPostings(queryeval::ExecuteInfo::createForTest(strict));
- SearchIterator::UP sb = bp->createSearch(*md, strict);
+ bp->basic_plan(strict, 100);
+ bp->fetchPostings(queryeval::ExecuteInfo::FULL);
+ SearchIterator::UP sb = bp->createSearch(*md);
return sb;
}
bool isWeightedSetTermSearch(Searchable &searchable, const std::string &field, bool strict) const {
@@ -127,8 +128,9 @@ struct WS {
FieldSpecList fields;
fields.add(FieldSpec(field, fieldId, handle));
queryeval::Blueprint::UP bp = searchable.createBlueprint(requestContext, fields, *node);
- bp->fetchPostings(queryeval::ExecuteInfo::createForTest(strict));
- SearchIterator::UP sb = bp->createSearch(*md, strict);
+ bp->basic_plan(strict, 100);
+ bp->fetchPostings(queryeval::ExecuteInfo::FULL);
+ SearchIterator::UP sb = bp->createSearch(*md);
FakeResult result;
sb->initRange(1, 10);
for (uint32_t docId = 1; docId < 10; ++docId) {
diff --git a/searchlib/src/tests/attribute/searchable/attributeblueprint_test.cpp b/searchlib/src/tests/attribute/searchable/attributeblueprint_test.cpp
index 50f7d170afc..4a7cc3984dd 100644
--- a/searchlib/src/tests/attribute/searchable/attributeblueprint_test.cpp
+++ b/searchlib/src/tests/attribute/searchable/attributeblueprint_test.cpp
@@ -127,9 +127,9 @@ do_search(const Node &node, IAttributeManager &attribute_manager, bool expect_at
} else {
EXPECT_TRUE(result->get_attribute_search_context() == nullptr);
}
- result->fetchPostings(queryeval::ExecuteInfo::TRUE);
- result->setDocIdLimit(DOCID_LIMIT);
- SearchIterator::UP iterator = result->createSearch(*md, true);
+ result->basic_plan(true, DOCID_LIMIT);
+ result->fetchPostings(queryeval::ExecuteInfo::FULL);
+ SearchIterator::UP iterator = result->createSearch(*md);
assert((bool)iterator);
iterator->initRange(1, DOCID_LIMIT);
EXPECT_TRUE(!iterator->seek(1));
@@ -313,8 +313,8 @@ public:
~BlueprintFactoryFixture() {}
Blueprint::UP create_blueprint(const Node& term) {
auto result = source.createBlueprint(request_ctx, FieldSpec(attr_name, 0, 0), term);
- result->fetchPostings(queryeval::ExecuteInfo::TRUE);
- result->setDocIdLimit(DOCID_LIMIT);
+ result->basic_plan(true, DOCID_LIMIT);
+ result->fetchPostings(queryeval::ExecuteInfo::FULL);
return result;
}
void expect_document_weight_attribute() {
@@ -325,14 +325,14 @@ public:
}
void expect_filter_search(const SimpleResult& upper, const SimpleResult& lower, const Node& term) {
auto blueprint = create_blueprint(term);
- auto upper_itr = blueprint->createFilterSearch(true, BFC::UPPER_BOUND);
- auto lower_itr = blueprint->createFilterSearch(true, BFC::LOWER_BOUND);
+ auto upper_itr = blueprint->createFilterSearch(BFC::UPPER_BOUND);
+ auto lower_itr = blueprint->createFilterSearch(BFC::LOWER_BOUND);
EXPECT_EQ(upper, SimpleResult().search(*upper_itr, DOCID_LIMIT));
EXPECT_EQ(lower, SimpleResult().search(*lower_itr, DOCID_LIMIT));
}
void expect_filter_wrapper(const Node& term) {
auto blueprint = create_blueprint(term);
- auto itr = blueprint->createFilterSearch(true, BFC::UPPER_BOUND);
+ auto itr = blueprint->createFilterSearch(BFC::UPPER_BOUND);
downcast<FilterWrapper>(*itr);
}
};
diff --git a/searchlib/src/tests/attribute/searchcontext/searchcontext_test.cpp b/searchlib/src/tests/attribute/searchcontext/searchcontext_test.cpp
index 77acbe046ca..87e6b2320fd 100644
--- a/searchlib/src/tests/attribute/searchcontext/searchcontext_test.cpp
+++ b/searchlib/src/tests/attribute/searchcontext/searchcontext_test.cpp
@@ -241,7 +241,7 @@ protected:
// test search iterator unpacking
void fillForSearchIteratorUnpackingTest(IntegerAttribute * ia, bool extra);
void testSearchIteratorUnpacking(const AttributePtr & ptr, SearchContext & sc, bool extra, bool strict) {
- sc.fetchPostings(queryeval::ExecuteInfo::createForTest(strict));
+ sc.fetchPostings(queryeval::ExecuteInfo::FULL, true);
for (bool withElementId : {false, true}) {
testSearchIteratorUnpacking(ptr, sc, extra, strict, withElementId);
}
@@ -469,7 +469,7 @@ template <typename V, typename T>
ResultSetPtr
SearchContextTest::performSearch(const V & vec, const T & term)
{
- return performSearch(queryeval::ExecuteInfo::TRUE, vec, term, TermType::WORD);
+ return performSearch(queryeval::ExecuteInfo::FULL, vec, term, TermType::WORD);
}
template <typename V, typename T>
@@ -478,7 +478,7 @@ SearchContextTest::performSearch(const queryeval::ExecuteInfo & executeInfo, con
{
TermFieldMatchData dummy;
SearchContextPtr sc = getSearch(vec, term, termType);
- sc->fetchPostings(executeInfo);
+ sc->fetchPostings(executeInfo, true);
SearchBasePtr sb = sc->createIterator(&dummy, true);
ResultSetPtr rs = performSearch(*sb, vec.getNumDocs());
return rs;
@@ -504,7 +504,7 @@ void
SearchContextTest::performSearch(const V & vec, const vespalib::string & term,
const DocSet & expected, TermType termType)
{
- performSearch(queryeval::ExecuteInfo::TRUE, vec, term, expected, termType);
+ performSearch(queryeval::ExecuteInfo::FULL, vec, term, expected, termType);
}
void
@@ -547,7 +547,7 @@ SearchContextTest::testFind(const PostingList<V, T> & pl, bool verify_hit_estima
EXPECT_EQ(exp_est.est_hits(), act_est.est_hits());
EXPECT_EQ(exp_est.is_unknown(), act_est.is_unknown());
}
- sc->fetchPostings(queryeval::ExecuteInfo::TRUE);
+ sc->fetchPostings(queryeval::ExecuteInfo::FULL, true);
TermFieldMatchData dummy;
SearchBasePtr sb = sc->createIterator(&dummy, true);
ResultSetPtr rs = performSearch(*sb, pl.getAttribute().getNumDocs());
@@ -676,7 +676,7 @@ public:
~Verifier() override;
SearchIterator::UP
create(bool strict) const override {
- _sc->fetchPostings(queryeval::ExecuteInfo::createForTest(strict));
+ _sc->fetchPostings(queryeval::ExecuteInfo::FULL, strict);
return _sc->createIterator(&_dummy, strict);
}
private:
@@ -784,7 +784,7 @@ SearchContextTest::testStrictSearchIterator(SearchContext & threeHits,
{
TermFieldMatchData dummy;
{ // search for value with 3 hits
- threeHits.fetchPostings(queryeval::ExecuteInfo::TRUE);
+ threeHits.fetchPostings(queryeval::ExecuteInfo::FULL, true);
SearchBasePtr sb = threeHits.createIterator(&dummy, true);
sb->initRange(1, threeHits.attribute().getCommittedDocIdLimit());
EXPECT_TRUE(typeTester.matches(*sb));
@@ -805,7 +805,7 @@ SearchContextTest::testStrictSearchIterator(SearchContext & threeHits,
}
{ // search for value with no hits
- noHits.fetchPostings(queryeval::ExecuteInfo::TRUE);
+ noHits.fetchPostings(queryeval::ExecuteInfo::FULL, true);
SearchBasePtr sb = noHits.createIterator(&dummy, true);
sb->initRange(1, noHits.attribute().getCommittedDocIdLimit());
ASSERT_TRUE(typeTester.matches(*sb));
@@ -823,7 +823,7 @@ SearchContextTest::testNonStrictSearchIterator(SearchContext & threeHits,
{
TermFieldMatchData dummy;
{ // search for value with three hits
- threeHits.fetchPostings(queryeval::ExecuteInfo::FALSE);
+ threeHits.fetchPostings(queryeval::ExecuteInfo::FULL, false);
SearchBasePtr sb = threeHits.createIterator(&dummy, false);
sb->initRange(1, threeHits.attribute().getCommittedDocIdLimit());
EXPECT_TRUE(typeTester.matches(*sb));
@@ -841,7 +841,7 @@ SearchContextTest::testNonStrictSearchIterator(SearchContext & threeHits,
EXPECT_TRUE(sb->getDocId() == 5u || sb->isAtEnd());
}
{ // search for value with no hits
- noHits.fetchPostings(queryeval::ExecuteInfo::FALSE);
+ noHits.fetchPostings(queryeval::ExecuteInfo::FULL, false);
SearchBasePtr sb = noHits.createIterator(&dummy, false);
sb->initRange(1, threeHits.attribute().getCommittedDocIdLimit());
@@ -1118,7 +1118,7 @@ SearchContextTest::performRangeSearch(const VectorType & vec, const vespalib::st
{
for (size_t num_threads : {1,3}) {
vespalib::SimpleThreadBundle thread_bundle(num_threads);
- auto executeInfo = queryeval::ExecuteInfo::create(true, 1.0, vespalib::Doom::never(), thread_bundle);
+ auto executeInfo = queryeval::ExecuteInfo::create(1.0, vespalib::Doom::never(), thread_bundle);
performSearch(executeInfo, vec, term, expected, TermType::WORD);
}
}