|
xapian-core
2.0.0
|
#include <queryoptimiser.h>
Collaboration diagram for Xapian::Internal::QueryOptimiser:Public Attributes | |
| bool | need_positions = false |
| bool | compound_weight = false |
| Xapian::doccount | shard_index |
| const Xapian::Database::Internal & | db |
| Xapian::doccount | db_size |
| PostListTree * | matcher |
Private Member Functions | |
| void | operator= (const QueryOptimiser &) |
| Prevent assignment. More... | |
| QueryOptimiser (const QueryOptimiser &) | |
| Prevent copying. More... | |
Private Attributes | |
| LocalSubMatch & | localsubmatch |
| Xapian::termcount | total_subqs = 0 |
| How many weighted leaf subqueries there are. More... | |
| LeafPostList * | hint = nullptr |
| bool | hint_owned = false |
| bool | no_estimates = false |
Definition at line 36 of file queryoptimiser.h.
|
private |
Prevent copying.
|
inline |
Definition at line 71 of file queryoptimiser.h.
|
inline |
Definition at line 80 of file queryoptimiser.h.
References hint, and hint_owned.
|
inline |
Definition at line 158 of file queryoptimiser.h.
References hint, and hint_owned.
Referenced by Xapian::Query::Internal::postlist_sub_or_like(), Xapian::Internal::QueryWindowed::postlist_windowed(), and Xapian::Internal::Context::shrink().
|
inline |
Definition at line 146 of file queryoptimiser.h.
References hint.
Referenced by LocalSubMatch::open_post_list().
|
inline |
Definition at line 90 of file queryoptimiser.h.
References no_estimates.
Referenced by LocalSubMatch::open_post_list(), Xapian::Internal::QueryPostingSource::postlist(), Xapian::Internal::QueryValueRange::postlist(), Xapian::Internal::QueryValueLE::postlist(), Xapian::Internal::QueryValueGE::postlist(), and Xapian::Internal::QueryAndMaybe::postlist_sub_and_like().
|
inline |
Definition at line 179 of file queryoptimiser.h.
References LocalSubMatch::get_stats(), and localsubmatch.
Referenced by Xapian::Internal::QueryPostingSource::postlist(), Xapian::Internal::QueryValueRange::postlist(), Xapian::Internal::QueryValueLE::postlist(), and Xapian::Internal::QueryValueGE::postlist().
|
inline |
Definition at line 86 of file queryoptimiser.h.
References total_subqs.
Referenced by LocalSubMatch::get_postlist(), Xapian::Internal::QuerySynonym::postlist(), Xapian::Internal::QueryMax::postlist(), Xapian::Internal::QueryWildcard::postlist(), Xapian::Internal::QueryEditDistance::postlist(), and Xapian::Query::Internal::postlist_sub_or_like().
|
inline |
Definition at line 84 of file queryoptimiser.h.
References total_subqs.
Referenced by Xapian::Internal::QueryTerm::postlist(), Xapian::Internal::QueryPostingSource::postlist(), Xapian::Internal::QueryValueRange::postlist(), Xapian::Internal::QueryValueLE::postlist(), Xapian::Internal::QueryValueGE::postlist(), Xapian::Internal::QueryWildcard::postlist(), and Xapian::Internal::QueryEditDistance::postlist().
|
inline |
Create a SynonymPostList object.
| or_pl | An unweighted BoolOrPostList or OrPostList of the PostList objects for children of the OP_SYNONYM. |
| termfreqs | Estimated TermFreqs for or_pl. |
Definition at line 139 of file queryoptimiser.h.
References localsubmatch, LocalSubMatch::make_synonym_postlist(), and matcher.
Referenced by Xapian::Internal::QueryBranch::do_synonym(), Xapian::Internal::QueryWildcard::postlist(), and Xapian::Internal::QueryEditDistance::postlist().
|
inline |
Definition at line 175 of file queryoptimiser.h.
References compound_weight, localsubmatch, and LocalSubMatch::weight_needs_wdf().
Referenced by Xapian::Internal::QueryAndMaybe::postlist_sub_and_like().
|
inline |
Definition at line 112 of file queryoptimiser.h.
References compound_weight, localsubmatch, need_positions, LocalSubMatch::open_post_list(), and term.
|
inline |
Create a PostList object for term.
| [out] | termfreqs | If not NULL, the pointed to object is set to the TermFreqs for term. If the database is sharded, these will be for the whole database not just the current shard. This is used to estimate TermFreqs for an OP_SYNONYM. |
Definition at line 102 of file queryoptimiser.h.
References compound_weight, localsubmatch, need_positions, LocalSubMatch::open_post_list(), and term.
Referenced by Xapian::Internal::QueryTerm::postlist().
|
private |
Prevent assignment.
|
inline |
Definition at line 156 of file queryoptimiser.h.
References hint_owned.
Referenced by LocalSubMatch::open_post_list().
|
inline |
Register a lazily-created LeafPostList for stats.
| pl | An object previously returned by open_lazy_post_list(). | |
| [out] | termfreqs | If not NULL, the pointed to object is set to the TermFreqs for term. If the database is sharded, these will be for the whole database not just the current shard. This is used to estimate TermFreqs for an OP_SYNONYM. |
Definition at line 128 of file queryoptimiser.h.
References localsubmatch, and LocalSubMatch::register_lazy_postlist_for_stats().
|
inline |
Definition at line 148 of file queryoptimiser.h.
References hint, and hint_owned.
Referenced by LocalSubMatch::open_post_list().
|
inline |
Definition at line 92 of file queryoptimiser.h.
References no_estimates.
Referenced by Xapian::Internal::QueryAndMaybe::postlist_sub_and_like().
|
inline |
Definition at line 88 of file queryoptimiser.h.
References total_subqs.
Referenced by Xapian::Internal::QuerySynonym::postlist(), Xapian::Internal::QueryMax::postlist(), Xapian::Internal::QueryWildcard::postlist(), Xapian::Internal::QueryEditDistance::postlist(), and Xapian::Query::Internal::postlist_sub_or_like().
| bool Xapian::Internal::QueryOptimiser::compound_weight = false |
Definition at line 61 of file queryoptimiser.h.
Referenced by Xapian::Internal::QueryBranch::do_synonym(), need_wdf_for_compound_weight(), open_lazy_post_list(), open_post_list(), Xapian::Internal::QueryWildcard::postlist(), and Xapian::Internal::QueryEditDistance::postlist().
| const Xapian::Database::Internal& Xapian::Internal::QueryOptimiser::db |
Definition at line 65 of file queryoptimiser.h.
Referenced by Xapian::Internal::QueryPostingSource::postlist(), Xapian::Internal::QueryValueRange::postlist(), Xapian::Internal::QueryValueLE::postlist(), Xapian::Internal::QueryValueGE::postlist(), and Xapian::Internal::QueryWindowed::postlist_windowed().
| Xapian::doccount Xapian::Internal::QueryOptimiser::db_size |
Definition at line 67 of file queryoptimiser.h.
Referenced by LocalSubMatch::open_post_list(), Xapian::Internal::QueryPostingSource::postlist(), Xapian::Internal::QueryValueRange::postlist(), Xapian::Internal::QueryValueLE::postlist(), and Xapian::Internal::QueryValueGE::postlist().
|
private |
Definition at line 52 of file queryoptimiser.h.
Referenced by destroy_postlist(), get_hint_postlist(), set_hint_postlist(), and ~QueryOptimiser().
|
private |
Definition at line 54 of file queryoptimiser.h.
Referenced by destroy_postlist(), own_hint_postlist(), set_hint_postlist(), and ~QueryOptimiser().
|
private |
Definition at line 43 of file queryoptimiser.h.
Referenced by get_stats(), make_synonym_postlist(), need_wdf_for_compound_weight(), open_lazy_post_list(), open_post_list(), and register_lazy_postlist_for_stats().
| PostListTree* Xapian::Internal::QueryOptimiser::matcher |
Definition at line 69 of file queryoptimiser.h.
Referenced by make_synonym_postlist(), and Xapian::Internal::QueryPostingSource::postlist().
| bool Xapian::Internal::QueryOptimiser::need_positions = false |
Definition at line 59 of file queryoptimiser.h.
Referenced by open_lazy_post_list(), open_post_list(), Xapian::Internal::QueryTerm::postlist_sub_and_like(), and Xapian::Internal::QueryWindowed::postlist_windowed().
|
private |
Definition at line 56 of file queryoptimiser.h.
Referenced by get_no_estimates(), and set_no_estimates().
| Xapian::doccount Xapian::Internal::QueryOptimiser::shard_index |
Definition at line 63 of file queryoptimiser.h.
Referenced by Xapian::Internal::QueryPostingSource::postlist().
|
private |
How many weighted leaf subqueries there are.
Used for scaling percentages when the highest weighted document doesn't "match all terms".
Definition at line 50 of file queryoptimiser.h.
Referenced by get_total_subqs(), inc_total_subqs(), and set_total_subqs().