diff options
| author | Douglas B. Rumbaugh <doug@douglasrumbaugh.com> | 2024-12-22 15:48:55 -0500 |
|---|---|---|
| committer | Douglas B. Rumbaugh <doug@douglasrumbaugh.com> | 2024-12-22 15:48:55 -0500 |
| commit | 2724b98da8699af150e850e66e92e0a832cd2e29 (patch) | |
| tree | cd32559b5065bf5447b0bd3c18495fb9e3606ea8 /include/framework/reconstruction/BSMPolicy.h | |
| parent | ba65c8976f54d4da2467074235a12f5be0bd5ebc (diff) | |
| download | dynamic-extension-2724b98da8699af150e850e66e92e0a832cd2e29.tar.gz | |
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.
Diffstat (limited to 'include/framework/reconstruction/BSMPolicy.h')
| -rw-r--r-- | include/framework/reconstruction/BSMPolicy.h | 6 |
1 files changed, 3 insertions, 3 deletions
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<ShardType, QueryType> *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; } |