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,
void crocksdb_options_set_compression_options(crocksdb_options_t* opt,
int w_bits, int level,
int strategy,
int max_dict_bytes) {
int strategy, int max_dict_bytes,
int zstd_max_train_bytes) {
opt->rep.compression_opts.window_bits = w_bits;
opt->rep.compression_opts.level = level;
opt->rep.compression_opts.strategy = strategy;
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,
......
......@@ -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(
crocksdb_options_t* opt, uint64_t n);
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(
crocksdb_options_t* opt, unsigned char v);
extern C_ROCKSDB_LIBRARY_API void
......
......@@ -696,6 +696,7 @@ extern "C" {
level: c_int,
strategy: c_int,
max_dict_bytes: c_int,
zstd_max_train_bytes: c_int,
);
pub fn crocksdb_options_set_compression_per_level(
options: *mut Options,
......
......@@ -1412,6 +1412,7 @@ impl ColumnFamilyOptions {
level: i32,
strategy: i32,
max_dict_bytes: i32,
zstd_max_train_bytes: i32,
) {
unsafe {
crocksdb_ffi::crocksdb_options_set_compression_options(
......@@ -1420,6 +1421,7 @@ impl ColumnFamilyOptions {
level,
strategy,
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