|
xapian-core
2.0.0
|
#include <postlisttree.h>
Collaboration diagram for PostListTree:Public Member Functions | |
| PostListTree (ValueStreamDocument &vsdoc_, Xapian::Database &db_, const Xapian::Weight &wtscheme) | |
| void | delete_postlists () |
| Delete all the PostList objects. More... | |
| ~PostListTree () | |
| bool * | get_max_weight_cached_flag_ptr () |
| Return pointer to flag to set to false to invalidate cached max weight. More... | |
| void | set_postlists (PostList **pls, Xapian::doccount n_shards_) |
| double | recalc_maxweight () |
| void | force_recalc () |
| Xapian::docid | get_docid () const |
| Xapian::termcount | get_doclength (Xapian::docid shard_did) const |
| double | get_weight () const |
| bool | next (double w_min) |
| Return false if we're done. More... | |
| void | get_doc_stats (Xapian::docid shard_did, Xapian::termcount &doclen, Xapian::termcount &unique_terms, Xapian::termcount &wdfdocmax) const |
| Xapian::termcount | count_matching_subqs () const |
| std::string | get_description () const |
Private Attributes | |
| PostList * | pl = NULL |
| bool | use_cached_max_weight = false |
| bool | need_doclength |
| bool | need_unique_terms |
| bool | need_wdfdocmax |
| double | max_weight |
| Xapian::doccount | current_shard = 0 |
| The current shard. More... | |
| PostList ** | shard_pls = NULL |
| The postlists for the shards. More... | |
| Xapian::doccount | n_shards = 0 |
| The number of shards. More... | |
| ValueStreamDocument & | vsdoc |
| Document proxy used for valuestream caching. More... | |
| Xapian::Database & | db |
| Xapian::Database::Internal * | shard_db = nullptr |
Definition at line 28 of file postlisttree.h.
|
inline |
Definition at line 67 of file postlisttree.h.
|
inline |
Definition at line 84 of file postlisttree.h.
References delete_postlists().
|
inline |
Definition at line 202 of file postlisttree.h.
References Xapian::Internal::PostList::count_matching_subqs(), and pl.
Referenced by ProtoMSet::update_max_weight().
|
inline |
Delete all the PostList objects.
Definition at line 77 of file postlisttree.h.
References n_shards, and shard_pls.
Referenced by Matcher::get_local_mset(), and ~PostListTree().
|
inline |
Definition at line 125 of file postlisttree.h.
References use_cached_max_weight.
Referenced by OrPostList::check(), AndPostList::check_helper(), OrPostList::decay_to_and(), OrPostList::decay_to_andmaybe(), MaxPostList::erase_sublist(), XorPostList::erase_sublist(), OrPostList::next(), AndPostList::next_helper(), OrPostList::skip_to(), and AndPostList::skip_to_helper().
|
inline |
Definition at line 206 of file postlisttree.h.
References current_shard, Xapian::Internal::PostList::get_description(), n_shards, and shard_pls.
|
inline |
Definition at line 186 of file postlisttree.h.
References Xapian::Database::Internal::get_doclength(), Xapian::Database::Internal::get_unique_terms(), Xapian::Database::Internal::get_wdfdocmax(), need_doclength, need_unique_terms, need_wdfdocmax, and shard_db.
Referenced by get_weight(), and SelectPostList::vet().
|
inline |
Definition at line 129 of file postlisttree.h.
References current_shard, Xapian::Internal::PostList::get_docid(), n_shards, pl, and unshard().
Referenced by Matcher::get_local_mset().
|
inline |
Definition at line 133 of file postlisttree.h.
References Xapian::Database::Internal::get_doclength(), and shard_db.
|
inline |
Return pointer to flag to set to false to invalidate cached max weight.
Used with ExternalPostList, which wraps a PostingSource object.
Definition at line 92 of file postlisttree.h.
References use_cached_max_weight.
Referenced by Xapian::Internal::QueryPostingSource::postlist().
|
inline |
Definition at line 137 of file postlisttree.h.
References get_doc_stats(), Xapian::Internal::PostList::get_docid(), Xapian::Internal::PostList::get_weight(), and pl.
Referenced by ProtoMSet::early_reject(), and Matcher::get_local_mset().
|
inline |
Return false if we're done.
Definition at line 144 of file postlisttree.h.
References Xapian::Internal::PostList::at_end(), current_shard, db, Xapian::Internal::intrusive_ptr_nonnull< T >::get(), Xapian::Database::internal, n_shards, ValueStreamDocument::new_shard(), Xapian::Internal::PostList::next(), pl, rare, recalc_maxweight(), shard_db, shard_pls, use_cached_max_weight, usual, and vsdoc.
Referenced by Matcher::get_local_mset().
|
inline |
Definition at line 111 of file postlisttree.h.
References current_shard, max_weight, n_shards, shard_pls, and use_cached_max_weight.
Referenced by Matcher::get_local_mset(), and next().
|
inline |
Definition at line 94 of file postlisttree.h.
References Assert, current_shard, db, Xapian::Internal::intrusive_ptr_nonnull< T >::get(), Xapian::Database::internal, n_shards, ValueStreamDocument::new_shard(), pl, shard_db, shard_pls, and vsdoc.
Referenced by Matcher::get_local_mset().
|
private |
The current shard.
Definition at line 42 of file postlisttree.h.
Referenced by get_description(), get_docid(), next(), recalc_maxweight(), and set_postlists().
|
private |
Definition at line 62 of file postlisttree.h.
Referenced by next(), and set_postlists().
|
private |
Definition at line 39 of file postlisttree.h.
Referenced by recalc_maxweight().
|
private |
The number of shards.
Definition at line 53 of file postlisttree.h.
Referenced by delete_postlists(), get_description(), get_docid(), next(), recalc_maxweight(), and set_postlists().
|
private |
Definition at line 33 of file postlisttree.h.
Referenced by get_doc_stats().
|
private |
Definition at line 35 of file postlisttree.h.
Referenced by get_doc_stats().
|
private |
Definition at line 37 of file postlisttree.h.
Referenced by get_doc_stats().
|
private |
Definition at line 29 of file postlisttree.h.
Referenced by count_matching_subqs(), get_docid(), get_weight(), next(), and set_postlists().
|
private |
Definition at line 64 of file postlisttree.h.
Referenced by get_doc_stats(), get_doclength(), next(), and set_postlists().
|
private |
The postlists for the shards.
Entries corresponding to remote shards will be NULL - the results from remote shards are included by merging MSet objects, rather than via the PostList tree.
Definition at line 50 of file postlisttree.h.
Referenced by delete_postlists(), get_description(), next(), recalc_maxweight(), and set_postlists().
|
private |
Definition at line 31 of file postlisttree.h.
Referenced by force_recalc(), get_max_weight_cached_flag_ptr(), next(), and recalc_maxweight().
|
private |
Document proxy used for valuestream caching.
Each time we move to a new shard we must notify this object so it can invalidate any cached valuestreams (which are specific to the shard).
Definition at line 60 of file postlisttree.h.
Referenced by next(), and set_postlists().