Commitlog: Expose convinience method "list_existing_segments"

This commit is contained in:
Calle Wilund
2015-08-24 19:19:01 +02:00
parent a3a02968ab
commit 4364d72ca3
2 changed files with 18 additions and 0 deletions

View File

@@ -997,3 +997,18 @@ future<std::vector<db::commitlog::descriptor>> db::commitlog::list_existing_desc
future<std::vector<db::commitlog::descriptor>> db::commitlog::list_existing_descriptors(const sstring& dir) const {
return _segment_manager->list_descriptors(dir);
}
future<std::vector<sstring>> db::commitlog::list_existing_segments() const {
return list_existing_segments(active_config().commit_log_location);
}
future<std::vector<sstring>> db::commitlog::list_existing_segments(const sstring& dir) const {
return list_existing_descriptors(dir).then([dir](auto descs) {
std::vector<sstring> paths;
std::transform(descs.begin(), descs.end(), std::back_inserter(paths), [&](auto& d) {
return dir + "/" + d.filename();
});
return make_ready_future<std::vector<sstring>>(std::move(paths));
});
}