From 45e2272758b5315472afad3806b632002195b522 Mon Sep 17 00:00:00 2001 From: Andronik Ordian Date: Wed, 20 May 2020 15:23:33 +0200 Subject: [PATCH 1/2] kvdb-rocksdb: set format_version to 5 --- kvdb-rocksdb/src/lib.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/kvdb-rocksdb/src/lib.rs b/kvdb-rocksdb/src/lib.rs index 2b1fd362a..cdcfb7ae7 100644 --- a/kvdb-rocksdb/src/lib.rs +++ b/kvdb-rocksdb/src/lib.rs @@ -339,6 +339,8 @@ fn generate_read_options() -> ReadOptions { fn generate_block_based_options(config: &DatabaseConfig) -> BlockBasedOptions { let mut block_opts = BlockBasedOptions::default(); block_opts.set_block_size(config.compaction.block_size); + block_opts.set_format_version(5); + block_opts.set_block_restart_interval(16); // Set cache size as recommended by // https://github.com/facebook/rocksdb/wiki/Setup-Options-and-Basic-Tuning#block-cache-size let cache_size = config.memory_budget() / 3; @@ -1106,7 +1108,7 @@ rocksdb.db.get.micros P50 : 2.000000 P95 : 3.000000 P99 : 4.000000 P100 : 5.0000 // Don't fsync every store assert!(settings.contains("Options.use_fsync: 0")); - // We're using the old format - assert!(settings.contains("format_version: 2")); + // We're using the new format + assert!(settings.contains("format_version: 5")); } } From 20d525e5edc3b365ad361f4d6d6fb08ec27db001 Mon Sep 17 00:00:00 2001 From: Andronik Ordian Date: Mon, 25 May 2020 15:25:09 +0200 Subject: [PATCH 2/2] Update kvdb-rocksdb/src/lib.rs Co-authored-by: David --- kvdb-rocksdb/src/lib.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/kvdb-rocksdb/src/lib.rs b/kvdb-rocksdb/src/lib.rs index cdcfb7ae7..fae33baa8 100644 --- a/kvdb-rocksdb/src/lib.rs +++ b/kvdb-rocksdb/src/lib.rs @@ -339,6 +339,7 @@ fn generate_read_options() -> ReadOptions { fn generate_block_based_options(config: &DatabaseConfig) -> BlockBasedOptions { let mut block_opts = BlockBasedOptions::default(); block_opts.set_block_size(config.compaction.block_size); + // See https://github.com/facebook/rocksdb/blob/a1523efcdf2f0e8133b9a9f6e170a0dad49f928f/include/rocksdb/table.h#L246-L271 for details on what the format versions are/do. block_opts.set_format_version(5); block_opts.set_block_restart_interval(16); // Set cache size as recommended by