mirror of
https://github.com/serai-dex/serai.git
synced 2025-12-08 20:29:23 +00:00
Consolidate RockDB code
Moves explicitly to zstd. RockDB recommends zstd, or at least lz4 over snappy, and this minimizes which dependencies we pull in.
This commit is contained in:
@@ -3,6 +3,8 @@ pub use mem::*;
|
||||
|
||||
#[cfg(feature = "rocksdb")]
|
||||
mod rocks;
|
||||
#[cfg(feature = "rocksdb")]
|
||||
pub use rocks::{RocksDB, new_rocksdb};
|
||||
|
||||
/// An object implementing get.
|
||||
pub trait Get {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
use std::sync::Arc;
|
||||
|
||||
use rocksdb::{ThreadMode, Transaction, TransactionDB};
|
||||
use rocksdb::{DBCompressionType, ThreadMode, SingleThreaded, Options, Transaction, TransactionDB};
|
||||
|
||||
use crate::*;
|
||||
|
||||
@@ -32,3 +32,10 @@ impl<T: ThreadMode + 'static> Db for Arc<TransactionDB<T>> {
|
||||
self.transaction()
|
||||
}
|
||||
}
|
||||
|
||||
pub type RocksDB = Arc<TransactionDB<SingleThreaded>>;
|
||||
pub fn new_rocksdb(path: &str) -> RocksDB {
|
||||
let mut options = Options::default();
|
||||
options.set_compression_type(DBCompressionType::Zstd);
|
||||
Arc::new(TransactionDB::open(&options, &Default::default(), path).unwrap())
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user