Commit 3432fff1 authored by Wallace's avatar Wallace Committed by Yi Wu

add merge operator config (#446)

Signed-off-by: 's avatarLittle-Wallace <bupt2013211450@gmail.com>
parent 084c0150
...@@ -2621,6 +2621,10 @@ void crocksdb_options_set_enable_multi_batch_write(crocksdb_options_t *opt, ...@@ -2621,6 +2621,10 @@ void crocksdb_options_set_enable_multi_batch_write(crocksdb_options_t *opt,
opt->rep.enable_multi_thread_write = v; 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, void crocksdb_options_set_unordered_write(crocksdb_options_t* opt,
unsigned char v) { unsigned char v) {
opt->rep.unordered_write = v; opt->rep.unordered_write = v;
...@@ -5279,6 +5283,11 @@ void ctitandb_options_set_blob_file_compression(ctitandb_options_t* opts, ...@@ -5279,6 +5283,11 @@ void ctitandb_options_set_blob_file_compression(ctitandb_options_t* opts,
opts->rep.blob_file_compression = static_cast<CompressionType>(type); 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, void ctitandb_decode_blob_index(const char* value, size_t value_size,
ctitandb_blob_index_t* index, char** errptr) { ctitandb_blob_index_t* index, char** errptr) {
Slice v(value, value_size); Slice v(value, value_size);
......
...@@ -1057,6 +1057,8 @@ crocksdb_options_set_enable_pipelined_write(crocksdb_options_t *, unsigned char) ...@@ -1057,6 +1057,8 @@ crocksdb_options_set_enable_pipelined_write(crocksdb_options_t *, unsigned char)
extern C_ROCKSDB_LIBRARY_API void extern C_ROCKSDB_LIBRARY_API void
crocksdb_options_set_enable_multi_batch_write(crocksdb_options_t *opt, crocksdb_options_set_enable_multi_batch_write(crocksdb_options_t *opt,
unsigned char v); 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 extern C_ROCKSDB_LIBRARY_API void
crocksdb_options_set_unordered_write(crocksdb_options_t*, unsigned char); crocksdb_options_set_unordered_write(crocksdb_options_t*, unsigned char);
extern C_ROCKSDB_LIBRARY_API void extern C_ROCKSDB_LIBRARY_API void
...@@ -2103,6 +2105,9 @@ extern C_ROCKSDB_LIBRARY_API void ctitandb_options_set_min_blob_size( ...@@ -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( extern C_ROCKSDB_LIBRARY_API int ctitandb_options_blob_file_compression(
ctitandb_options_t*); 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( extern C_ROCKSDB_LIBRARY_API void ctitandb_options_set_blob_file_compression(
ctitandb_options_t*, int type); ctitandb_options_t*, int type);
......
...@@ -574,6 +574,7 @@ extern "C" { ...@@ -574,6 +574,7 @@ extern "C" {
pub fn crocksdb_options_set_bytes_per_sync(options: *mut Options, bytes: u64); 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_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_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_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_allow_concurrent_memtable_write(options: *mut Options, v: bool);
pub fn crocksdb_options_set_manual_wal_flush(options: *mut Options, v: bool); pub fn crocksdb_options_set_manual_wal_flush(options: *mut Options, v: bool);
...@@ -2072,6 +2073,7 @@ extern "C" { ...@@ -2072,6 +2073,7 @@ extern "C" {
pub fn ctitandb_options_set_min_blob_size(opts: *mut DBTitanDBOptions, size: u64); pub fn ctitandb_options_set_min_blob_size(opts: *mut DBTitanDBOptions, size: u64);
pub fn ctitandb_options_blob_file_compression(opts: *mut DBTitanDBOptions) pub fn ctitandb_options_blob_file_compression(opts: *mut DBTitanDBOptions)
-> DBCompressionType; -> DBCompressionType;
pub fn ctitandb_options_set_gc_merge_rewrite(opts: *mut DBTitanDBOptions, enable: bool);
pub fn ctitandb_options_set_blob_file_compression( pub fn ctitandb_options_set_blob_file_compression(
opts: *mut DBTitanDBOptions, opts: *mut DBTitanDBOptions,
t: DBCompressionType, t: DBCompressionType,
......
...@@ -1037,6 +1037,10 @@ impl DBOptions { ...@@ -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) { pub fn enable_unordered_write(&self, v: bool) {
unsafe { unsafe {
crocksdb_ffi::crocksdb_options_set_unordered_write(self.inner, v); crocksdb_ffi::crocksdb_options_set_unordered_write(self.inner, v);
......
...@@ -149,6 +149,12 @@ impl TitanDBOptions { ...@@ -149,6 +149,12 @@ impl TitanDBOptions {
crocksdb_ffi::ctitandb_options_set_blob_run_mode(self.inner, t); 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 { 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