Mercurial > lbo > hg > leveldb-rs
changeset 361:d1427db7cd72
db_impl: Update compaction test for testing discarding obsolete entries
author | Lewin Bormann <lbo@spheniscida.de> |
---|---|
date | Fri, 06 Oct 2017 06:15:30 +0000 |
parents | 803cd9917c82 |
children | 6a1a111f508e |
files | src/db_impl.rs |
diffstat | 1 files changed, 11 insertions(+), 15 deletions(-) [+] |
line wrap: on
line diff
--- a/src/db_impl.rs Fri Oct 06 06:14:28 2017 +0000 +++ b/src/db_impl.rs Fri Oct 06 06:15:30 2017 +0000 @@ -978,12 +978,12 @@ } } - let manifest = manifest_file_name(name, 11); + let manifest = manifest_file_name(name, 10); let manifest_file = opt.env.open_writable_file(Path::new(&manifest)).unwrap(); let mut lw = LogWriter::new(manifest_file); lw.add_record(&ve.encode()).unwrap(); lw.flush().unwrap(); - set_current_file(&opt.env, name, 11).unwrap(); + set_current_file(&opt.env, name, 10).unwrap(); DB::open(name, opt).unwrap() } @@ -1343,22 +1343,18 @@ #[test] fn test_db_impl_compaction() { - let (mut v, opt) = make_version(); - - // Trigger size compaction at level 1. - v.compaction_score = Some(2.0); - v.compaction_level = Some(1); - - let mut db = DB::new("db", opt.clone()); - db.vset.borrow_mut().add_version(v); - db.vset.borrow_mut().next_file_num = 10; + let mut db = build_db(); + let v = db.current(); + v.borrow_mut().compaction_score = Some(2.0); + v.borrow_mut().compaction_level = Some(1); db.start_compaction().unwrap(); - assert!(!opt.env.exists(Path::new("db/000003.ldb")).unwrap()); - assert!(opt.env.exists(Path::new("db/000010.ldb")).unwrap()); - assert_eq!(375, opt.env.size_of(Path::new("db/000010.ldb")).unwrap()); + assert!(!db.opt.env.exists(Path::new("db/000003.ldb")).unwrap()); + assert!(db.opt.env.exists(Path::new("db/000013.ldb")).unwrap()); + assert_eq!(345, db.opt.env.size_of(Path::new("db/000013.ldb")).unwrap()); + // New current version. let v = db.current(); assert_eq!(0, v.borrow().files[1].len()); assert_eq!(2, v.borrow().files[2].len()); @@ -1397,7 +1393,7 @@ let mut fmd = FileMetaData::default(); fmd.num = 1; - let mut cs = CompactionState::new(Compaction::new(&options::for_test(), 2, None)); + let mut cs = CompactionState::new(Compaction::new(&options::for_test(), 2, None), 12); cs.outputs = vec![fmd]; cs.cleanup(&env, name);