From deb6001cae43fd9def25a76ff8d4b55698fefd9a Mon Sep 17 00:00:00 2001 From: Oleksandr Anyshchenko Date: Wed, 30 Jan 2019 16:23:14 +0200 Subject: [PATCH] Usage `to_path` func and `get_cf_names` func was removed as redundant --- src/db.rs | 66 +++--------------------------------------------------- src/lib.rs | 2 +- 2 files changed, 4 insertions(+), 64 deletions(-) diff --git a/src/db.rs b/src/db.rs index 11149fb..f0464e3 100644 --- a/src/db.rs +++ b/src/db.rs @@ -740,17 +740,7 @@ impl DB { } pub fn list_cf>(opts: &Options, path: P) -> Result, Error> { - let cpath = match CString::new(path.as_ref().to_string_lossy().as_bytes()) { - Ok(c) => c, - Err(_) => { - return Err(Error::new( - "Failed to convert path to CString \ - when opening DB." - .to_owned(), - )) - } - }; - + let cpath = to_cpath(path)?; let mut length = 0; unsafe { @@ -770,7 +760,7 @@ impl DB { } pub fn destroy>(opts: &Options, path: P) -> Result<(), Error> { - let cpath = CString::new(path.as_ref().to_string_lossy().as_bytes()).unwrap(); + let cpath = to_cpath(path)?; unsafe { ffi_try!(ffi::rocksdb_destroy_db(opts.inner, cpath.as_ptr(),)); } @@ -778,7 +768,7 @@ impl DB { } pub fn repair>(opts: Options, path: P) -> Result<(), Error> { - let cpath = CString::new(path.as_ref().to_string_lossy().as_bytes()).unwrap(); + let cpath = to_cpath(path)?; unsafe { ffi_try!(ffi::rocksdb_repair_db(opts.inner, cpath.as_ptr(),)); } @@ -1416,30 +1406,6 @@ impl DBVector { } } -/// Retrieves a list of column families names from a given path. -pub fn get_cf_names>(path: P) -> Result, Error> { - let opts = Options::default(); - let cpath = to_cpath(path)?; - let result: Vec; - - unsafe { - let mut cflen: size_t = 0; - let column_fams_raw = ffi_try!(ffi::rocksdb_list_column_families( - opts.inner, - cpath.as_ptr() as *const _, - &mut cflen, - )); - let column_fams = slice::from_raw_parts(column_fams_raw, cflen as usize); - result = column_fams - .iter() - .map(|cf| CStr::from_ptr(*cf).to_string_lossy().into_owned()) - .collect(); - ffi::rocksdb_list_column_families_destroy(column_fams_raw, cflen); - } - - Ok(result) -} - fn to_cpath>(path: P) -> Result { match CString::new(path.as_ref().to_string_lossy().as_bytes()) { Ok(c) => Ok(c), @@ -1623,29 +1589,3 @@ fn set_option_test() { } assert!(DB::destroy(&Options::default(), path).is_ok()); } - -#[test] -fn get_cf_names_test() { - let path = "_rust_rocksdb_get_cf_names"; - let opts = Options::default(); - { - let db = DB::open_default(path).unwrap(); - let cf_one = db.create_cf("one", &opts).unwrap(); - let result = db.put_cf(cf_one, b"1", b"1"); - assert!(result.is_ok()); - let cf_two = db.create_cf("two", &opts).unwrap(); - let result = db.put_cf(cf_two, b"2", b"2"); - assert!(result.is_ok()); - } - { - let cf_names = get_cf_names(path).unwrap(); - let cfs = cf_names.iter().map(String::as_str).collect::>(); - assert_eq!(cfs, vec!["default", "one", "two"]); - let db = DB::open_cf(&opts, path, cfs.as_slice()).unwrap(); - let cf_one = db.cf_handle("one").unwrap(); - assert_eq!(db.get_cf(cf_one, b"1").unwrap().unwrap().as_ref(), b"1"); - let cf_two = db.cf_handle("two").unwrap(); - assert_eq!(db.get_cf(cf_two, b"2").unwrap().unwrap().as_ref(), b"2"); - } - assert!(DB::destroy(&opts, path).is_ok()); -} diff --git a/src/lib.rs b/src/lib.rs index 30fee96..a39262f 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -71,7 +71,7 @@ mod slice_transform; pub use compaction_filter::Decision as CompactionDecision; pub use db::{ - get_cf_names, new_bloom_filter, DBCompactionStyle, DBCompressionType, DBIterator, DBRawIterator, + new_bloom_filter, DBCompactionStyle, DBCompressionType, DBIterator, DBRawIterator, DBRecoveryMode, DBVector, Direction, IteratorMode, ReadOptions, Snapshot, WriteBatch, };