aboutsummaryrefslogtreecommitdiffstats
path: root/searchcommon
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2019-12-24 11:09:34 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2019-12-31 15:58:39 +0000
commit7d7b46f012b4f9bbd416f17a945204acc28c6ae5 (patch)
tree96a4cc5f82fea12b073e70522219c5c6b36ffbec /searchcommon
parent6d7909e022817be11b5f088cbd1e537d9b71919d (diff)
Add ExecutionInfo to propagate more information than just strictness to fetchPostings.
The estimated hitrate that each iterator will will enable smarter query evaluation. Especially will it be possible to figure out if static up front cost can be avoided.
Diffstat (limited to 'searchcommon')
-rw-r--r--searchcommon/src/vespa/searchcommon/attribute/i_search_context.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/searchcommon/src/vespa/searchcommon/attribute/i_search_context.h b/searchcommon/src/vespa/searchcommon/attribute/i_search_context.h
index 9a24ab82c9f..795129bf3b8 100644
--- a/searchcommon/src/vespa/searchcommon/attribute/i_search_context.h
+++ b/searchcommon/src/vespa/searchcommon/attribute/i_search_context.h
@@ -6,7 +6,10 @@
#include <vespa/vespalib/stllike/string.h>
namespace search::fef { class TermFieldMatchData; }
-namespace search::queryeval { class SearchIterator; }
+namespace search::queryeval {
+ class SearchIterator;
+ class ExecuteInfo;
+}
namespace search { class QueryTermUCS4; }
namespace search::attribute {
@@ -43,7 +46,7 @@ public:
* Create temporary posting lists.
* Should be called before createIterator() is called.
*/
- virtual void fetchPostings(bool strict) = 0;
+ virtual void fetchPostings(const queryeval::ExecuteInfo &execInfo) = 0;
virtual bool valid() const = 0;
virtual Int64Range getAsIntegerTerm() const = 0;