diff --git a/sstables/sstables.cc b/sstables/sstables.cc index ecf74fa4bc..aaf47d33ba 100644 --- a/sstables/sstables.cc +++ b/sstables/sstables.cc @@ -1112,6 +1112,16 @@ const sstring sstable::filename(component_type f) { return _dir + "/" + version + "-" + generation + "-" + format + "-" + component; } +const sstring sstable::filename(sstring dir, version_types version, unsigned long generation, + format_types format, component_type component) { + auto& v = _version_string.at(version); + auto& f = _format_string.at(format); + auto& c= _component_map.at(component); + auto g = to_sstring(generation); + + return dir + "/" + v + "-" + g + "-" + f + "-" + c; +} + sstable::version_types sstable::version_from_sstring(sstring &s) { return reverse_map(s, _version_string); } diff --git a/sstables/sstables.hh b/sstables/sstables.hh index b4d43402bb..c583f3084a 100644 --- a/sstables/sstables.hh +++ b/sstables/sstables.hh @@ -84,6 +84,8 @@ public: static version_types version_from_sstring(sstring& s); static format_types format_from_sstring(sstring& s); + static const sstring filename(sstring dir, version_types version, unsigned long generation, + format_types format, component_type component); future<> load(); future<> store();