in src/columnar_storage/src/compaction/picker.rs [136:153]
fn files_by_segment(&self, files: Vec<SstFile>) -> BTreeMap<Timestamp, Vec<SstFile>> {
let mut files_by_segment = BTreeMap::new();
let segment_duration = self.segment_duration;
for file in files {
let segment = file.meta().time_range.start.truncate_by(segment_duration);
trace!(segment = ?segment, file = ?file);
files_by_segment
.entry(segment)
.or_insert_with(Vec::new)
.push(file);
}
trace!(
files = ?files_by_segment,
"Group files of similar timestamp into segment"
);
files_by_segment
}