Unverified Commit 82e918a7 authored by Wallace's avatar Wallace Committed by GitHub

add merge operator config (#446)

Signed-off-by: 's avatarLittle-Wallace <bupt2013211450@gmail.com>
parent f6c5af65
......@@ -2621,6 +2621,10 @@ void crocksdb_options_set_enable_multi_batch_write(crocksdb_options_t *opt,
opt->rep.enable_multi_thread_write = v;
}
unsigned char crocksdb_options_is_enable_multi_batch_write(crocksdb_options_t *opt) {
return opt->rep.enable_multi_thread_write;
}
void crocksdb_options_set_unordered_write(crocksdb_options_t* opt,
unsigned char v) {
opt->rep.unordered_write = v;
......@@ -5279,6 +5283,11 @@ void ctitandb_options_set_blob_file_compression(ctitandb_options_t* opts,
opts->rep.blob_file_compression = static_cast<CompressionType>(type);
}
void ctitandb_options_set_gc_merge_rewrite(ctitandb_options_t* opts,
unsigned char enable) {
opts->rep.gc_merge_rewrite = enable;
}
void ctitandb_decode_blob_index(const char* value, size_t value_size,
ctitandb_blob_index_t* index, char** errptr) {
Slice v(value, value_size);
......
......@@ -1057,6 +1057,8 @@ crocksdb_options_set_enable_pipelined_write(crocksdb_options_t *, unsigned char)
extern C_ROCKSDB_LIBRARY_API void
crocksdb_options_set_enable_multi_batch_write(crocksdb_options_t *opt,
unsigned char v);
extern C_ROCKSDB_LIBRARY_API unsigned char
crocksdb_options_is_enable_multi_batch_write(crocksdb_options_t *opt);
extern C_ROCKSDB_LIBRARY_API void
crocksdb_options_set_unordered_write(crocksdb_options_t*, unsigned char);
extern C_ROCKSDB_LIBRARY_API void
......@@ -2103,6 +2105,9 @@ extern C_ROCKSDB_LIBRARY_API void ctitandb_options_set_min_blob_size(
extern C_ROCKSDB_LIBRARY_API int ctitandb_options_blob_file_compression(
ctitandb_options_t*);
extern C_ROCKSDB_LIBRARY_API void ctitandb_options_set_gc_merge_rewrite(
ctitandb_options_t*, unsigned char);
extern C_ROCKSDB_LIBRARY_API void ctitandb_options_set_blob_file_compression(
ctitandb_options_t*, int type);
......
......@@ -574,6 +574,7 @@ extern "C" {
pub fn crocksdb_options_set_bytes_per_sync(options: *mut Options, bytes: u64);
pub fn crocksdb_options_set_enable_pipelined_write(options: *mut Options, v: bool);
pub fn crocksdb_options_set_enable_multi_batch_write(options: *mut Options, v: bool);
pub fn crocksdb_options_is_enable_multi_batch_write(options: *mut Options) -> bool;
pub fn crocksdb_options_set_unordered_write(options: *mut Options, v: bool);
pub fn crocksdb_options_set_allow_concurrent_memtable_write(options: *mut Options, v: bool);
pub fn crocksdb_options_set_manual_wal_flush(options: *mut Options, v: bool);
......@@ -2072,6 +2073,7 @@ extern "C" {
pub fn ctitandb_options_set_min_blob_size(opts: *mut DBTitanDBOptions, size: u64);
pub fn ctitandb_options_blob_file_compression(opts: *mut DBTitanDBOptions)
-> DBCompressionType;
pub fn ctitandb_options_set_gc_merge_rewrite(opts: *mut DBTitanDBOptions, enable: bool);
pub fn ctitandb_options_set_blob_file_compression(
opts: *mut DBTitanDBOptions,
t: DBCompressionType,
......
......@@ -1037,6 +1037,10 @@ impl DBOptions {
}
}
pub fn is_enable_multi_batch_write(&self) -> bool {
unsafe { crocksdb_ffi::crocksdb_options_is_enable_multi_batch_write(self.inner) }
}
pub fn enable_unordered_write(&self, v: bool) {
unsafe {
crocksdb_ffi::crocksdb_options_set_unordered_write(self.inner, v);
......
......@@ -149,6 +149,12 @@ impl TitanDBOptions {
crocksdb_ffi::ctitandb_options_set_blob_run_mode(self.inner, t);
}
}
pub fn set_gc_merge_rewrite(&mut self, enable: bool) {
unsafe {
crocksdb_ffi::ctitandb_options_set_gc_merge_rewrite(self.inner, enable);
}
}
}
impl Drop for TitanDBOptions {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment