in common/rusty_leveldb_sgx/src/version_set.rs [531:558]
fn finalize(&self, v: &mut Version) {
let mut best_lvl = None;
let mut best_score = None;
for l in 0..NUM_LEVELS - 1 {
let score: f64;
if l == 0 {
score = v.files[l].len() as f64 / 4.0;
} else {
let mut max_bytes = 10.0 * f64::from(1 << 20);
for _ in 0..l - 1 {
max_bytes *= 10.0;
}
score = total_size(v.files[l].iter()) as f64 / max_bytes;
}
if let Some(ref mut b) = best_score {
if *b < score {
*b = score;
best_lvl = Some(l);
}
} else {
best_score = Some(score);
best_lvl = Some(l);
}
}
v.compaction_score = best_score;
v.compaction_level = best_lvl;
}