Skip to content

Commit f4c5733

Browse files
committed
[WIP] Expose WAL compression option
Signed-off-by: Bisheng Huang <[email protected]>
1 parent af14652 commit f4c5733

File tree

7 files changed

+32
-6
lines changed

7 files changed

+32
-6
lines changed

.gitmodules

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
[submodule "rocksdb"]
22
path = librocksdb_sys/rocksdb
3-
url = https://github.com/v01dstar/rocksdb.git
4-
branch = 8.10-tikv
3+
url = https://github.com/hbisheng/rocksdb.git
4+
branch = fix-pri
55

66
[submodule "titan"]
77
path = librocksdb_sys/libtitan_sys/titan
8-
url = https://github.com/v01dstar/titan.git
9-
branch = upgrade-rocksdb
8+
url = https://github.com/hbisheng/titan.git
9+
branch = fix-pri

librocksdb_sys/crocksdb/c.cc

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5070,6 +5070,14 @@ void crocksdb_options_set_min_level_to_compress(crocksdb_options_t* opt,
50705070
}
50715071
}
50725072

5073+
uint32_t crocksdb_options_get_wal_compression(crocksdb_options_t* opt) {
5074+
return static_cast<uint32_t>(opt->rep.wal_compression);
5075+
}
5076+
5077+
void crocksdb_options_set_wal_compression(crocksdb_options_t* opt, int compression_type) {
5078+
opt->rep.wal_compression = static_cast<CompressionType>(compression_type);
5079+
}
5080+
50735081
size_t crocksdb_livefiles_count(const crocksdb_livefiles_t* lf) {
50745082
return static_cast<int>(lf->rep.size());
50755083
}

librocksdb_sys/crocksdb/crocksdb/c.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1345,6 +1345,11 @@ extern C_ROCKSDB_LIBRARY_API void crocksdb_options_set_plain_table_factory(
13451345
extern C_ROCKSDB_LIBRARY_API void crocksdb_options_set_min_level_to_compress(
13461346
crocksdb_options_t* opt, int level);
13471347

1348+
extern C_ROCKSDB_LIBRARY_API uint32_t crocksdb_options_get_wal_compression(
1349+
crocksdb_options_t* opt);
1350+
extern C_ROCKSDB_LIBRARY_API void crocksdb_options_set_wal_compression(
1351+
crocksdb_options_t* opt, int compression_type);
1352+
13481353
extern C_ROCKSDB_LIBRARY_API void crocksdb_options_set_memtable_huge_page_size(
13491354
crocksdb_options_t*, size_t);
13501355

librocksdb_sys/libtitan_sys/titan

librocksdb_sys/rocksdb

librocksdb_sys/src/lib.rs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -847,6 +847,11 @@ extern "C" {
847847
zstd_max_train_bytes: c_int,
848848
parallel_threads: c_int,
849849
);
850+
pub fn crocksdb_options_set_wal_compression(
851+
options: *mut Options,
852+
compression_style_no: DBCompressionType,
853+
);
854+
pub fn crocksdb_options_get_wal_compression(options: *mut Options) -> DBCompressionType;
850855
pub fn crocksdb_options_set_bottommost_compression_options(
851856
options: *mut Options,
852857
window_bits: c_int,

src/rocksdb_options.rs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1117,6 +1117,14 @@ impl DBOptions {
11171117
}
11181118
}
11191119

1120+
pub fn set_wal_compression(&self, c: DBCompressionType) {
1121+
unsafe { crocksdb_ffi::crocksdb_options_set_wal_compression(self.inner, c) }
1122+
}
1123+
1124+
pub fn get_wal_compression(&self) -> DBCompressionType {
1125+
unsafe { crocksdb_ffi::crocksdb_options_get_wal_compression(self.inner) }
1126+
}
1127+
11201128
pub fn set_delayed_write_rate(&mut self, rate: u64) {
11211129
unsafe {
11221130
crocksdb_ffi::crocksdb_options_set_delayed_write_rate(self.inner, rate);

0 commit comments

Comments
 (0)