summaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2023-11-03 19:54:53 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2023-11-03 20:29:50 +0000
commit10cfb0c78fd1bf8ce12818849378c6205d6980d9 (patch)
tree4b95023f5fa912efab15d615c48511bd077dc066 /searchcore
parent5f551374824a936ef198e289dfd4f37f84330d36 (diff)
When fetching summaries we do not require a strict search iterator.
We are iterating the document ids explicit anyway.
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/vespa/searchcore/proton/matching/match_tools.cpp2
-rw-r--r--searchcore/src/vespa/searchcore/proton/matching/query.cpp4
-rw-r--r--searchcore/src/vespa/searchcore/proton/matching/query.h3
3 files changed, 5 insertions, 4 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/matching/match_tools.cpp b/searchcore/src/vespa/searchcore/proton/matching/match_tools.cpp
index 11285db2c66..2937429be13 100644
--- a/searchcore/src/vespa/searchcore/proton/matching/match_tools.cpp
+++ b/searchcore/src/vespa/searchcore/proton/matching/match_tools.cpp
@@ -201,7 +201,7 @@ MatchToolsFactory(QueryLimiter & queryLimiter,
trace.addEvent(5, "Optimize query execution plan");
_query.optimize();
trace.addEvent(4, "Perform dictionary lookups and posting lists initialization");
- _query.fetchPostings(_requestContext.getDoom());
+ _query.fetchPostings(is_search, _requestContext.getDoom());
if (is_search) {
_query.handle_global_filter(_requestContext.getDoom(), searchContext.getDocIdLimit(),
_attribute_blueprint_params.global_filter_lower_limit,
diff --git a/searchcore/src/vespa/searchcore/proton/matching/query.cpp b/searchcore/src/vespa/searchcore/proton/matching/query.cpp
index 7be0b21879f..b3c7eae0ccf 100644
--- a/searchcore/src/vespa/searchcore/proton/matching/query.cpp
+++ b/searchcore/src/vespa/searchcore/proton/matching/query.cpp
@@ -247,9 +247,9 @@ Query::optimize()
}
void
-Query::fetchPostings(const vespalib::Doom & doom)
+Query::fetchPostings(bool strict, const vespalib::Doom & doom)
{
- _blueprint->fetchPostings(search::queryeval::ExecuteInfo::create(true, &doom));
+ _blueprint->fetchPostings(search::queryeval::ExecuteInfo::create(strict, &doom));
}
void
diff --git a/searchcore/src/vespa/searchcore/proton/matching/query.h b/searchcore/src/vespa/searchcore/proton/matching/query.h
index 104113ed21d..2bdea528b57 100644
--- a/searchcore/src/vespa/searchcore/proton/matching/query.h
+++ b/searchcore/src/vespa/searchcore/proton/matching/query.h
@@ -98,7 +98,8 @@ public:
* test to verify the original query without optimization.
**/
void optimize();
- void fetchPostings(const vespalib::Doom & doom);
+ void fetchPostings(const vespalib::Doom & doom) { fetchPostings(true, doom); }
+ void fetchPostings(bool strict, const vespalib::Doom & doom);
void handle_global_filter(const vespalib::Doom & doom, uint32_t docid_limit,
double global_filter_lower_limit, double global_filter_upper_limit,