5 #ifndef __BF_TREE_CLEANER_H 6 #define __BF_TREE_CLEANER_H 42 page_lsn(cb.get_page_lsn()),
43 rec_lsn(cb.get_rec_lsn()),
46 ref_count(cb._ref_count_ex) {}
53 std::function<bool(const cleaner_cb_info&, const cleaner_cb_info&)>;
74 virtual void do_work();
80 if (min_write_size <= 1) {
83 return min_write_ignore_freq > 0 &&
84 (get_rounds_completed() % min_write_ignore_freq == 0);
88 void collect_candidates();
90 void clean_candidates();
92 void flush_clusters(
const vector<size_t>& clusters);
97 void clean_no_policy();
99 void flush_workspace_no_clusters(
size_t count);
119 if (s ==
"highest_refcount") {
122 if (s ==
"lowest_refcount") {
125 if (s ==
"oldest_lsn") {
131 if (s ==
"highest_density") {
137 if (s ==
"no_policy") {
143 #endif // __BF_TREE_CLEANER_H bool ignore_min_write_now() const
Definition: bf_tree_cleaner.h:79
lsn_t rec_lsn
Definition: bf_tree_cleaner.h:33
Control block in the new buffer pool class.
Definition: bf_tree_cb.h:53
size_t num_candidates
Cleaner policy options.
Definition: bf_tree_cleaner.h:107
lsn_t page_lsn
Definition: bf_tree_cleaner.h:31
size_t min_write_ignore_freq
Definition: bf_tree_cleaner.h:115
uint16_t ref_count
Definition: bf_tree_cleaner.h:39
Definition: page_cleaner.h:17
Start-up parameters for the storage engine. See OPTIONS.
Definition: sm_options.h:24
Definition: bf_tree_cleaner.h:30
uint32_t bf_idx
Definition: basics.h:56
uint32_t PageID
Definition: basics.h:45
#define w_assert0(x)
Default assert/debug level is 0.
Definition: w_base.h:175
Definition: bf_tree_cleaner.h:55
cleaner_cb_info(bf_idx idx, const bf_tree_cb_t &cb)
Definition: bf_tree_cleaner.h:41
Log Sequence Number. See Log Sequence Numbers (LSN).
Definition: lsn.h:243
bf_idx idx
Definition: bf_tree_cleaner.h:35
std::ostream & operator<<(std::ostream &os, const ConfigFile &cf)
Definition: confparser.cpp:83
cleaner_policy make_cleaner_policy(string s)
Definition: bf_tree_cleaner.h:118
std::function< bool(const cleaner_cb_info &, const cleaner_cb_info &)> policy_predicate_t
Definition: bf_tree_cleaner.h:53
PageID pid
Definition: bf_tree_cleaner.h:37
cleaner_policy policy
Definition: bf_tree_cleaner.h:109
vector< cleaner_cb_info > candidates
Definition: bf_tree_cleaner.h:104
size_t min_write_size
Only write out clusters of pages with this minimum size.
Definition: bf_tree_cleaner.h:112
cleaner_policy
Definition: bf_tree_cleaner.h:16