aboutsummaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@online.no>2024-03-19 12:28:45 +0100
committerTor Egge <Tor.Egge@online.no>2024-03-19 12:28:45 +0100
commit94d55bd32b3395d0dee9eacbc3a0c8573f0f3429 (patch)
tree45ab83501705b9008f1c50dcd188adfc411c4764 /searchlib
parent2f663bd8757167d9d655f38d0116be4ec77fb266 (diff)
Add virtual fields to index environment for streaming mode.
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/vespa/searchlib/query/streaming/queryterm.cpp6
-rw-r--r--searchlib/src/vespa/searchlib/query/streaming/queryterm.h1
-rw-r--r--searchlib/src/vespa/searchlib/query/streaming/same_element_query_node.cpp6
-rw-r--r--searchlib/src/vespa/searchlib/query/streaming/same_element_query_node.h1
4 files changed, 14 insertions, 0 deletions
diff --git a/searchlib/src/vespa/searchlib/query/streaming/queryterm.cpp b/searchlib/src/vespa/searchlib/query/streaming/queryterm.cpp
index 07fc60d2243..90bf276af77 100644
--- a/searchlib/src/vespa/searchlib/query/streaming/queryterm.cpp
+++ b/searchlib/src/vespa/searchlib/query/streaming/queryterm.cpp
@@ -159,4 +159,10 @@ QueryTerm::as_equiv_query_node() const noexcept
return nullptr;
}
+bool
+QueryTerm::is_same_element_query_node() const noexcept
+{
+ return false;
+}
+
}
diff --git a/searchlib/src/vespa/searchlib/query/streaming/queryterm.h b/searchlib/src/vespa/searchlib/query/streaming/queryterm.h
index 78b0a1fea7d..05b12804d52 100644
--- a/searchlib/src/vespa/searchlib/query/streaming/queryterm.h
+++ b/searchlib/src/vespa/searchlib/query/streaming/queryterm.h
@@ -108,6 +108,7 @@ public:
virtual RegexpTerm* as_regexp_term() noexcept;
virtual FuzzyTerm* as_fuzzy_term() noexcept;
virtual const EquivQueryNode* as_equiv_query_node() const noexcept;
+ virtual bool is_same_element_query_node() const noexcept;
virtual void unpack_match_data(uint32_t docid, const fef::ITermData& td, fef::MatchData& match_data, const fef::IIndexEnvironment& index_env);
protected:
template <typename HitListType>
diff --git a/searchlib/src/vespa/searchlib/query/streaming/same_element_query_node.cpp b/searchlib/src/vespa/searchlib/query/streaming/same_element_query_node.cpp
index cd9c693ca1c..fee1feb511d 100644
--- a/searchlib/src/vespa/searchlib/query/streaming/same_element_query_node.cpp
+++ b/searchlib/src/vespa/searchlib/query/streaming/same_element_query_node.cpp
@@ -95,4 +95,10 @@ SameElementQueryNode::multi_index_terms() const noexcept
return true;
}
+bool
+SameElementQueryNode::is_same_element_query_node() const noexcept
+{
+ return true;
+}
+
}
diff --git a/searchlib/src/vespa/searchlib/query/streaming/same_element_query_node.h b/searchlib/src/vespa/searchlib/query/streaming/same_element_query_node.h
index 37fb3dbba52..87f5d06d35b 100644
--- a/searchlib/src/vespa/searchlib/query/streaming/same_element_query_node.h
+++ b/searchlib/src/vespa/searchlib/query/streaming/same_element_query_node.h
@@ -18,6 +18,7 @@ public:
const HitList & evaluateHits(HitList & hl) const override;
void unpack_match_data(uint32_t docid, const fef::ITermData& td, fef::MatchData& match_data, const fef::IIndexEnvironment& index_env) override;
bool multi_index_terms() const noexcept override;
+ bool is_same_element_query_node() const noexcept override;
};
}