diff --git a/replica/compaction_group.hh b/replica/compaction_group.hh index c1b8c56a24..060da70797 100644 --- a/replica/compaction_group.hh +++ b/replica/compaction_group.hh @@ -236,17 +236,17 @@ public: const dht::token_range& token_range() const noexcept; - size_t memtable_count() const noexcept; + size_t memtable_count() const; const compaction_group_ptr& main_compaction_group() const noexcept; const std::vector& split_ready_compaction_groups() const; compaction_group_ptr& select_compaction_group(locator::tablet_range_side) noexcept; - uint64_t live_disk_space_used() const noexcept; + uint64_t live_disk_space_used() const; - void for_each_compaction_group(std::function action) const noexcept; - utils::small_vector compaction_groups() noexcept; - utils::small_vector compaction_groups() const noexcept; + void for_each_compaction_group(std::function action) const; + utils::small_vector compaction_groups(); + utils::small_vector compaction_groups() const; utils::small_vector split_unready_groups() const; bool split_unready_groups_are_empty() const; @@ -369,7 +369,7 @@ public: virtual storage_group& storage_group_for_token(dht::token) const = 0; virtual utils::chunked_vector storage_groups_for_token_range(dht::token_range tr) const = 0; - virtual locator::table_load_stats table_load_stats(std::function tablet_filter) const noexcept = 0; + virtual locator::table_load_stats table_load_stats(std::function tablet_filter) const = 0; virtual bool all_storage_groups_split() = 0; virtual future<> split_all_storage_groups(tasks::task_info tablet_split_task_info) = 0; virtual future<> maybe_split_compaction_group_of(size_t idx) = 0; diff --git a/replica/database.hh b/replica/database.hh index a741a4ed1c..a4708cebdf 100644 --- a/replica/database.hh +++ b/replica/database.hh @@ -1104,7 +1104,7 @@ public: // The tablet filter is used to not double account migrating tablets, so it's important that // only one of pending or leaving replica is accounted based on current migration stage. - locator::table_load_stats table_load_stats(std::function tablet_filter) const noexcept; + locator::table_load_stats table_load_stats(std::function tablet_filter) const; const db::view::stats& get_view_stats() const { return _view_stats; diff --git a/replica/table.cc b/replica/table.cc index 4410844690..80884a235d 100644 --- a/replica/table.cc +++ b/replica/table.cc @@ -724,7 +724,7 @@ public: return *_single_sg; } - locator::table_load_stats table_load_stats(std::function) const noexcept override { + locator::table_load_stats table_load_stats(std::function) const override { return locator::table_load_stats{ .size_in_bytes = _single_sg->live_disk_space_used(), .split_ready_seq_number = std::numeric_limits::min() @@ -869,7 +869,7 @@ public: return storage_group_for_id(storage_group_of(token).first); } - locator::table_load_stats table_load_stats(std::function tablet_filter) const noexcept override; + locator::table_load_stats table_load_stats(std::function tablet_filter) const override; bool all_storage_groups_split() override; future<> split_all_storage_groups(tasks::task_info tablet_split_task_info) override; future<> maybe_split_compaction_group_of(size_t idx) override; @@ -917,7 +917,7 @@ compaction_group_ptr& storage_group::select_compaction_group(locator::tablet_ran return _main_cg; } -void storage_group::for_each_compaction_group(std::function action) const noexcept { +void storage_group::for_each_compaction_group(std::function action) const { action(_main_cg); for (auto& cg : _merging_groups) { action(cg); @@ -927,7 +927,7 @@ void storage_group::for_each_compaction_group(std::function storage_group::compaction_groups() noexcept { +utils::small_vector storage_group::compaction_groups() { utils::small_vector cgs; for_each_compaction_group([&cgs] (const compaction_group_ptr& cg) { cgs.push_back(cg); @@ -935,7 +935,7 @@ utils::small_vector storage_group::compaction_groups() return cgs; } -utils::small_vector storage_group::compaction_groups() const noexcept { +utils::small_vector storage_group::compaction_groups() const { utils::small_vector cgs; for_each_compaction_group([&cgs] (const compaction_group_ptr& cg) { cgs.push_back(cg); @@ -1869,7 +1869,7 @@ uint64_t compaction_group::live_disk_space_used() const noexcept { return _main_sstables->bytes_on_disk() + _maintenance_sstables->bytes_on_disk(); } -uint64_t storage_group::live_disk_space_used() const noexcept { +uint64_t storage_group::live_disk_space_used() const { auto cgs = const_cast(*this).compaction_groups(); return std::ranges::fold_left(cgs | std::views::transform(std::mem_fn(&compaction_group::live_disk_space_used)), uint64_t(0), std::plus{}); } @@ -2557,7 +2557,7 @@ void table::on_flush_timer() { }); } -locator::table_load_stats tablet_storage_group_manager::table_load_stats(std::function tablet_filter) const noexcept { +locator::table_load_stats tablet_storage_group_manager::table_load_stats(std::function tablet_filter) const { locator::table_load_stats stats; stats.split_ready_seq_number = _split_ready_seq_number; @@ -2570,7 +2570,7 @@ locator::table_load_stats tablet_storage_group_manager::table_load_stats(std::fu return stats; } -locator::table_load_stats table::table_load_stats(std::function tablet_filter) const noexcept { +locator::table_load_stats table::table_load_stats(std::function tablet_filter) const { return _sg_manager->table_load_stats(std::move(tablet_filter)); } @@ -3135,7 +3135,7 @@ size_t compaction_group::memtable_count() const noexcept { return _memtables->size(); } -size_t storage_group::memtable_count() const noexcept { +size_t storage_group::memtable_count() const { return std::ranges::fold_left(compaction_groups() | std::views::transform(std::mem_fn(&compaction_group::memtable_count)), size_t(0), std::plus{}); }