Unverified Commit d1abd7e6 authored by AngleNet's avatar AngleNet Committed by GitHub

add dict-compression options to crocksdb and regenerate bindings (#554)

Expose dictionary compression options for rocksdb to Tikv. So we could introduce dictionary compression to Tikv to relieve the compression issue. It's part of work [Issue 8635](https://github.com/tikv/tikv/issues/8635).

Issue Number: https://github.com/tikv/tikv/issues/8635Signed-off-by: 's avatarMin <anglenet@sina.cn>
parent c6b58a4e
...@@ -2610,12 +2610,13 @@ void crocksdb_options_get_compression_per_level(crocksdb_options_t* opt, ...@@ -2610,12 +2610,13 @@ void crocksdb_options_get_compression_per_level(crocksdb_options_t* opt,
void crocksdb_options_set_compression_options(crocksdb_options_t* opt, void crocksdb_options_set_compression_options(crocksdb_options_t* opt,
int w_bits, int level, int w_bits, int level,
int strategy, int strategy, int max_dict_bytes,
int max_dict_bytes) { int zstd_max_train_bytes) {
opt->rep.compression_opts.window_bits = w_bits; opt->rep.compression_opts.window_bits = w_bits;
opt->rep.compression_opts.level = level; opt->rep.compression_opts.level = level;
opt->rep.compression_opts.strategy = strategy; opt->rep.compression_opts.strategy = strategy;
opt->rep.compression_opts.max_dict_bytes = max_dict_bytes; opt->rep.compression_opts.max_dict_bytes = max_dict_bytes;
opt->rep.compression_opts.zstd_max_train_bytes = zstd_max_train_bytes;
} }
void crocksdb_options_set_use_direct_reads(crocksdb_options_t* opt, void crocksdb_options_set_use_direct_reads(crocksdb_options_t* opt,
......
...@@ -967,7 +967,7 @@ extern C_ROCKSDB_LIBRARY_API void crocksdb_options_set_max_open_files( ...@@ -967,7 +967,7 @@ extern C_ROCKSDB_LIBRARY_API void crocksdb_options_set_max_open_files(
extern C_ROCKSDB_LIBRARY_API void crocksdb_options_set_max_total_wal_size( extern C_ROCKSDB_LIBRARY_API void crocksdb_options_set_max_total_wal_size(
crocksdb_options_t* opt, uint64_t n); crocksdb_options_t* opt, uint64_t n);
extern C_ROCKSDB_LIBRARY_API void crocksdb_options_set_compression_options( extern C_ROCKSDB_LIBRARY_API void crocksdb_options_set_compression_options(
crocksdb_options_t*, int, int, int, int); crocksdb_options_t*, int, int, int, int, int);
extern C_ROCKSDB_LIBRARY_API void crocksdb_options_set_use_direct_reads( extern C_ROCKSDB_LIBRARY_API void crocksdb_options_set_use_direct_reads(
crocksdb_options_t* opt, unsigned char v); crocksdb_options_t* opt, unsigned char v);
extern C_ROCKSDB_LIBRARY_API void extern C_ROCKSDB_LIBRARY_API void
......
...@@ -696,6 +696,7 @@ extern "C" { ...@@ -696,6 +696,7 @@ extern "C" {
level: c_int, level: c_int,
strategy: c_int, strategy: c_int,
max_dict_bytes: c_int, max_dict_bytes: c_int,
zstd_max_train_bytes: c_int,
); );
pub fn crocksdb_options_set_compression_per_level( pub fn crocksdb_options_set_compression_per_level(
options: *mut Options, options: *mut Options,
......
...@@ -1412,6 +1412,7 @@ impl ColumnFamilyOptions { ...@@ -1412,6 +1412,7 @@ impl ColumnFamilyOptions {
level: i32, level: i32,
strategy: i32, strategy: i32,
max_dict_bytes: i32, max_dict_bytes: i32,
zstd_max_train_bytes: i32,
) { ) {
unsafe { unsafe {
crocksdb_ffi::crocksdb_options_set_compression_options( crocksdb_ffi::crocksdb_options_set_compression_options(
...@@ -1420,6 +1421,7 @@ impl ColumnFamilyOptions { ...@@ -1420,6 +1421,7 @@ impl ColumnFamilyOptions {
level, level,
strategy, strategy,
max_dict_bytes, max_dict_bytes,
zstd_max_train_bytes,
) )
} }
} }
......
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