From 2724b98da8699af150e850e66e92e0a832cd2e29 Mon Sep 17 00:00:00 2001 From: "Douglas B. Rumbaugh" Date: Sun, 22 Dec 2024 15:48:55 -0500 Subject: More updates BSM is currently broken--I'll need to think a bit about how best to actually implement this in the current framework (if I even want to port it over) because it doesn't use the same flushing mechanism as most other approaches. --- include/framework/reconstruction/BSMPolicy.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'include/framework/reconstruction/BSMPolicy.h') diff --git a/include/framework/reconstruction/BSMPolicy.h b/include/framework/reconstruction/BSMPolicy.h index 4ceca9a..ab8c6e4 100644 --- a/include/framework/reconstruction/BSMPolicy.h +++ b/include/framework/reconstruction/BSMPolicy.h @@ -56,15 +56,15 @@ public: ReconstructionTask get_flush_task(const Epoch *epoch) const override { return ReconstructionTask{ - {{buffer_shid}}, 0, m_buffer_size, ReconstructionType::Flush}; + {{buffer_shid}}, 0, m_buffer_size, ReconstructionType::Merge}; } private: level_index find_reconstruction_target(LevelVector &levels) const { - level_index target_level = 0; + level_index target_level = invalid_level_idx; for (level_index i = 0; i < (level_index)levels.size(); i++) { - if (levels[i]->get_record_count() + 1 <= capacity(i)) { + if (levels[i]->get_record_count() + m_buffer_size <= capacity(i)) { target_level = i; break; } -- cgit v1.2.3