@nxtedition/rocksdb 10.1.3 → 10.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/binding.cc CHANGED
@@ -980,21 +980,18 @@ NAPI_METHOD(db_get_many) {
980
980
  auto snapshot = std::shared_ptr<const rocksdb::Snapshot>(
981
981
  database->db->GetSnapshot(), [database](auto ptr) { database->db->ReleaseSnapshot(ptr); });
982
982
 
983
- // TODO (fix): Ensure lifetime of buffer?
984
- std::vector<rocksdb::Slice> keys { size };
983
+ std::vector<rocksdb::PinnableSlice> keys { size };
985
984
 
986
985
  for (uint32_t n = 0; n < size; n++) {
987
986
  napi_value element;
988
- char* buf;
989
- size_t length;
990
987
  NAPI_STATUS_THROWS(napi_get_element(env, argv[1], n, &element));
991
- NAPI_STATUS_THROWS(napi_get_buffer_info(env, element, reinterpret_cast<void**>(&buf), &length));
992
- keys[n] = rocksdb::Slice{ buf, length };
988
+ NAPI_STATUS_THROWS(GetValue(env, element, keys[n]));
993
989
  }
994
990
 
995
991
  struct State {
996
992
  std::vector<rocksdb::Status> statuses;
997
993
  std::vector<rocksdb::PinnableSlice> values;
994
+ std::vector<rocksdb::Slice> keys;
998
995
  };
999
996
 
1000
997
  runAsync<State>(
@@ -1009,8 +1006,13 @@ NAPI_METHOD(db_get_many) {
1009
1006
 
1010
1007
  state.statuses.resize(size);
1011
1008
  state.values.resize(size);
1009
+ state.keys.resize(size);
1012
1010
 
1013
- database->db->MultiGet(readOptions, column, size, keys.data(), state.values.data(), state.statuses.data());
1011
+ for (auto n = 0; n < size; n++) {
1012
+ state.keys[n] = keys[n];
1013
+ }
1014
+
1015
+ database->db->MultiGet(readOptions, column, size, state.keys.data(), state.values.data(), state.statuses.data());
1014
1016
 
1015
1017
  return rocksdb::Status::OK();
1016
1018
  },
@@ -1033,6 +1035,10 @@ NAPI_METHOD(db_get_many) {
1033
1035
  NAPI_STATUS_RETURN(napi_set_element(env, argv[1], idx, element));
1034
1036
  }
1035
1037
 
1038
+ state.statuses.clear();
1039
+ state.values.clear();
1040
+ state.keys.clear();
1041
+
1036
1042
  return napi_ok;
1037
1043
  });
1038
1044
 
package/index.js CHANGED
@@ -156,9 +156,8 @@ class RocksLevel extends AbstractLevel {
156
156
 
157
157
  try {
158
158
  this[kRef]()
159
- // NOTE: `keys` needs to be referenced until callback is called
160
159
  binding.db_get_many(this[kContext], keys, options ?? EMPTY, (err, val) => {
161
- callback(err, val, keys)
160
+ callback(err, val)
162
161
  this[kUnref]()
163
162
  })
164
163
  } catch (err) {
@@ -289,7 +288,6 @@ class RocksLevel extends AbstractLevel {
289
288
  } else {
290
289
  resolve({
291
290
  rows,
292
- sequence: binding.iterator_get_sequence(context),
293
291
  finished
294
292
  })
295
293
  }
package/iterator.js CHANGED
@@ -36,10 +36,6 @@ class Iterator extends AbstractIterator {
36
36
  this[kPosition] = 0
37
37
  }
38
38
 
39
- get sequence () {
40
- return binding.iterator_get_sequence(this[kContext])
41
- }
42
-
43
39
  _seek (target) {
44
40
  if (target.length === 0) {
45
41
  throw new Error('cannot seek() to an empty target')
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nxtedition/rocksdb",
3
- "version": "10.1.3",
3
+ "version": "10.1.5",
4
4
  "description": "A low-level Node.js RocksDB binding",
5
5
  "license": "MIT",
6
6
  "main": "index.js",
package/util.h CHANGED
@@ -133,12 +133,35 @@ static napi_status GetString(napi_env env, napi_value from, std::string& to) {
133
133
  return napi_ok;
134
134
  }
135
135
 
136
+ void CleanupString(void* env, void* ref) {
137
+ napi_delete_reference(static_cast<napi_env>(env), static_cast<napi_ref>(ref));
138
+ }
139
+
136
140
  static napi_status GetString(napi_env env, napi_value from, rocksdb::PinnableSlice& to) {
137
141
  napi_valuetype type;
138
142
  NAPI_STATUS_RETURN(napi_typeof(env, from, &type));
139
143
 
140
- NAPI_STATUS_RETURN(GetString(env, from, *to.GetSelf()));
141
- to.PinSelf();
144
+ if (type == napi_string) {
145
+ size_t length = 0;
146
+ NAPI_STATUS_RETURN(napi_get_value_string_utf8(env, from, nullptr, 0, &length));
147
+ to.GetSelf()->resize(length, '\0');
148
+ NAPI_STATUS_RETURN(napi_get_value_string_utf8(env, from, to.GetSelf()->data(), length + 1, &length));
149
+ to.PinSelf();
150
+ } else {
151
+ bool isBuffer;
152
+ NAPI_STATUS_RETURN(napi_is_buffer(env, from, &isBuffer));
153
+
154
+ if (isBuffer) {
155
+ char* buf = nullptr;
156
+ size_t length = 0;
157
+ napi_ref ref;
158
+ NAPI_STATUS_RETURN(napi_get_buffer_info(env, from, reinterpret_cast<void**>(&buf), &length));
159
+ NAPI_STATUS_RETURN(napi_create_reference(env, from, 1, &ref));
160
+ to.PinSlice(rocksdb::Slice{buf,length}, CleanupString, env, ref);
161
+ } else {
162
+ return napi_invalid_arg;
163
+ }
164
+ }
142
165
 
143
166
  return napi_ok;
144
167
  }
package/tmp/000099.sst DELETED
Binary file
package/tmp/000102.sst DELETED
Binary file
package/tmp/000103.log DELETED
Binary file
package/tmp/CURRENT DELETED
@@ -1 +0,0 @@
1
- MANIFEST-000104
package/tmp/IDENTITY DELETED
@@ -1 +0,0 @@
1
- 6d5096a1-16eb-423d-8e1e-c703b4fdbc14
package/tmp/LOCK DELETED
File without changes
Binary file
@@ -1,207 +0,0 @@
1
- # This is a RocksDB option file.
2
- #
3
- # For detailed file format spec, please refer to the example file
4
- # in examples/rocksdb_option_file_example.ini
5
- #
6
-
7
- [Version]
8
- rocksdb_version=9.3.1
9
- options_file_version=1.1
10
-
11
- [DBOptions]
12
- max_background_flushes=-1
13
- compaction_readahead_size=2097152
14
- strict_bytes_per_sync=false
15
- wal_bytes_per_sync=0
16
- max_open_files=-1
17
- stats_history_buffer_size=1048576
18
- max_total_wal_size=0
19
- stats_persist_period_sec=600
20
- stats_dump_period_sec=600
21
- avoid_flush_during_shutdown=false
22
- max_subcompactions=1
23
- bytes_per_sync=0
24
- delayed_write_rate=16777216
25
- max_background_compactions=-1
26
- max_background_jobs=4
27
- delete_obsolete_files_period_micros=21600000000
28
- writable_file_max_buffer_size=1048576
29
- follower_catchup_retry_wait_ms=100
30
- file_checksum_gen_factory=nullptr
31
- allow_data_in_errors=false
32
- max_bgerror_resume_count=2147483647
33
- best_efforts_recovery=false
34
- write_dbid_to_manifest=false
35
- atomic_flush=false
36
- manual_wal_flush=false
37
- two_write_queues=false
38
- avoid_flush_during_recovery=false
39
- dump_malloc_stats=false
40
- info_log_level=HEADER_LEVEL
41
- write_thread_slow_yield_usec=3
42
- unordered_write=false
43
- allow_ingest_behind=false
44
- fail_if_options_file_error=true
45
- persist_stats_to_disk=false
46
- WAL_ttl_seconds=0
47
- bgerror_resume_retry_interval=1000000
48
- allow_concurrent_memtable_write=true
49
- paranoid_checks=true
50
- WAL_size_limit_MB=0
51
- lowest_used_cache_tier=kNonVolatileBlockTier
52
- keep_log_file_num=1000
53
- table_cache_numshardbits=6
54
- max_file_opening_threads=16
55
- random_access_max_buffer_size=1048576
56
- follower_refresh_catchup_period_ms=10000
57
- log_readahead_size=0
58
- enable_pipelined_write=false
59
- wal_recovery_mode=kPointInTimeRecovery
60
- follower_catchup_retry_count=10
61
- db_write_buffer_size=0
62
- allow_2pc=false
63
- skip_checking_sst_file_sizes_on_db_open=false
64
- skip_stats_update_on_db_open=false
65
- recycle_log_file_num=0
66
- db_host_id=__hostname__
67
- track_and_verify_wals_in_manifest=false
68
- use_fsync=false
69
- wal_compression=kNoCompression
70
- compaction_verify_record_count=true
71
- error_if_exists=false
72
- manifest_preallocation_size=4194304
73
- is_fd_close_on_exec=true
74
- enable_write_thread_adaptive_yield=true
75
- enable_thread_tracking=false
76
- avoid_unnecessary_blocking_io=true
77
- allow_fallocate=true
78
- max_log_file_size=0
79
- advise_random_on_open=true
80
- create_missing_column_families=true
81
- max_write_batch_group_size_bytes=1048576
82
- use_adaptive_mutex=false
83
- wal_filter=nullptr
84
- create_if_missing=true
85
- enforce_single_del_contracts=true
86
- allow_mmap_writes=false
87
- verify_sst_unique_id_in_manifest=true
88
- log_file_time_to_roll=0
89
- use_direct_io_for_flush_and_compaction=false
90
- flush_verify_memtable_count=true
91
- max_manifest_file_size=1073741824
92
- write_thread_max_yield_usec=100
93
- use_direct_reads=false
94
- allow_mmap_reads=false
95
-
96
-
97
- [CFOptions "default"]
98
- bottommost_file_compaction_delay=0
99
- memtable_protection_bytes_per_key=0
100
- compression_per_level=kNoCompression:kNoCompression:kZSTD:kZSTD:kZSTD:kZSTD:kZSTD
101
- bottommost_compression=kDisableCompressionOption
102
- sample_for_compression=0
103
- blob_garbage_collection_age_cutoff=0.250000
104
- blob_compression_type=kNoCompression
105
- compression=kZSTD
106
- default_write_temperature=kUnknown
107
- last_level_temperature=kUnknown
108
- compaction_options_universal={allow_trivial_move=false;stop_style=kCompactionStopStyleTotalSize;min_merge_width=2;compression_size_percent=-1;max_size_amplification_percent=200;incremental=false;max_merge_width=4294967295;size_ratio=1;}
109
- target_file_size_base=16000000
110
- memtable_whole_key_filtering=false
111
- blob_file_starting_level=0
112
- soft_pending_compaction_bytes_limit=68719476736
113
- max_write_buffer_number=6
114
- ttl=2592000
115
- compaction_options_fifo={file_temperature_age_thresholds=;allow_compaction=false;age_for_warm=0;max_table_files_size=1073741824;}
116
- memtable_huge_page_size=0
117
- max_sequential_skip_in_iterations=8
118
- strict_max_successive_merges=false
119
- max_successive_merges=0
120
- inplace_update_num_locks=10000
121
- enable_blob_garbage_collection=false
122
- arena_block_size=1048576
123
- bottommost_compression_opts={use_zstd_dict_trainer=true;enabled=false;zstd_max_train_bytes=0;parallel_threads=1;max_compressed_bytes_per_kb=896;checksum=false;max_dict_bytes=0;strategy=0;max_dict_buffer_bytes=0;level=32767;window_bits=-14;}
124
- target_file_size_multiplier=1
125
- max_bytes_for_level_multiplier_additional=1:1:1:1:1:1:1
126
- prepopulate_blob_cache=kDisable
127
- blob_compaction_readahead_size=0
128
- min_blob_size=0
129
- level0_stop_writes_trigger=36
130
- blob_garbage_collection_force_threshold=1.000000
131
- enable_blob_files=false
132
- level0_slowdown_writes_trigger=20
133
- level0_file_num_compaction_trigger=2
134
- block_protection_bytes_per_key=0
135
- prefix_extractor=nullptr
136
- max_bytes_for_level_multiplier=10.000000
137
- write_buffer_size=67108864
138
- disable_auto_compactions=false
139
- max_compaction_bytes=400000000
140
- memtable_max_range_deletions=0
141
- compression_opts={use_zstd_dict_trainer=true;enabled=false;zstd_max_train_bytes=1638400;parallel_threads=1;max_compressed_bytes_per_kb=896;checksum=false;max_dict_bytes=16384;strategy=0;max_dict_buffer_bytes=0;level=32767;window_bits=-14;}
142
- hard_pending_compaction_bytes_limit=274877906944
143
- blob_file_size=268435456
144
- periodic_compaction_seconds=0
145
- paranoid_file_checks=false
146
- experimental_mempurge_threshold=0.000000
147
- memtable_prefix_bloom_size_ratio=0.000000
148
- max_bytes_for_level_base=128000000
149
- report_bg_io_stats=false
150
- sst_partitioner_factory=nullptr
151
- compaction_pri=kMinOverlappingRatio
152
- compaction_style=kCompactionStyleLevel
153
- compaction_filter_factory=nullptr
154
- compaction_filter=nullptr
155
- memtable_factory=SkipListFactory
156
- comparator=leveldb.BytewiseComparator
157
- bloom_locality=0
158
- min_write_buffer_number_to_merge=2
159
- table_factory=BlockBasedTable
160
- max_write_buffer_size_to_maintain=0
161
- max_write_buffer_number_to_maintain=0
162
- optimize_filters_for_hits=false
163
- default_temperature=kUnknown
164
- preserve_internal_time_seconds=0
165
- force_consistency_checks=true
166
- merge_operator=nullptr
167
- num_levels=7
168
- memtable_insert_with_hint_prefix_extractor=nullptr
169
- level_compaction_dynamic_level_bytes=true
170
- persist_user_defined_timestamps=true
171
- preclude_last_level_data_seconds=0
172
- inplace_update_support=false
173
-
174
- [TableOptions/BlockBasedTable "default"]
175
- num_file_reads_for_auto_readahead=2
176
- metadata_cache_options={unpartitioned_pinning=kFallback;partition_pinning=kFallback;top_level_index_pinning=kFallback;}
177
- read_amp_bytes_per_bit=0
178
- verify_compression=false
179
- format_version=5
180
- optimize_filters_for_memory=true
181
- partition_filters=false
182
- detect_filter_construct_corruption=false
183
- initial_auto_readahead_size=8192
184
- max_auto_readahead_size=262144
185
- enable_index_compression=true
186
- checksum=kXXH3
187
- index_block_restart_interval=1
188
- pin_top_level_index_and_filter=true
189
- block_align=false
190
- block_size=4096
191
- index_type=kBinarySearch
192
- filter_policy=bloomfilter:10:false
193
- metadata_block_size=4096
194
- no_block_cache=false
195
- whole_key_filtering=true
196
- index_shortening=kShortenSeparators
197
- block_size_deviation=10
198
- data_block_index_type=kDataBlockBinarySearch
199
- use_delta_encoding=true
200
- data_block_hash_table_util_ratio=0.750000
201
- cache_index_and_filter_blocks=false
202
- prepopulate_block_cache=kDisable
203
- block_restart_interval=16
204
- pin_l0_filter_and_index_blocks_in_cache=false
205
- cache_index_and_filter_blocks_with_high_priority=true
206
- flush_block_policy_factory=FlushBlockBySizePolicyFactory
207
-
@@ -1,207 +0,0 @@
1
- # This is a RocksDB option file.
2
- #
3
- # For detailed file format spec, please refer to the example file
4
- # in examples/rocksdb_option_file_example.ini
5
- #
6
-
7
- [Version]
8
- rocksdb_version=9.3.1
9
- options_file_version=1.1
10
-
11
- [DBOptions]
12
- max_background_flushes=-1
13
- compaction_readahead_size=2097152
14
- strict_bytes_per_sync=false
15
- wal_bytes_per_sync=0
16
- max_open_files=-1
17
- stats_history_buffer_size=1048576
18
- max_total_wal_size=0
19
- stats_persist_period_sec=600
20
- stats_dump_period_sec=600
21
- avoid_flush_during_shutdown=false
22
- max_subcompactions=1
23
- bytes_per_sync=0
24
- delayed_write_rate=16777216
25
- max_background_compactions=-1
26
- max_background_jobs=4
27
- delete_obsolete_files_period_micros=21600000000
28
- writable_file_max_buffer_size=1048576
29
- follower_catchup_retry_wait_ms=100
30
- file_checksum_gen_factory=nullptr
31
- allow_data_in_errors=false
32
- max_bgerror_resume_count=2147483647
33
- best_efforts_recovery=false
34
- write_dbid_to_manifest=false
35
- atomic_flush=false
36
- manual_wal_flush=false
37
- two_write_queues=false
38
- avoid_flush_during_recovery=false
39
- dump_malloc_stats=false
40
- info_log_level=HEADER_LEVEL
41
- write_thread_slow_yield_usec=3
42
- unordered_write=false
43
- allow_ingest_behind=false
44
- fail_if_options_file_error=true
45
- persist_stats_to_disk=false
46
- WAL_ttl_seconds=0
47
- bgerror_resume_retry_interval=1000000
48
- allow_concurrent_memtable_write=true
49
- paranoid_checks=true
50
- WAL_size_limit_MB=0
51
- lowest_used_cache_tier=kNonVolatileBlockTier
52
- keep_log_file_num=1000
53
- table_cache_numshardbits=6
54
- max_file_opening_threads=16
55
- random_access_max_buffer_size=1048576
56
- follower_refresh_catchup_period_ms=10000
57
- log_readahead_size=0
58
- enable_pipelined_write=false
59
- wal_recovery_mode=kPointInTimeRecovery
60
- follower_catchup_retry_count=10
61
- db_write_buffer_size=0
62
- allow_2pc=false
63
- skip_checking_sst_file_sizes_on_db_open=false
64
- skip_stats_update_on_db_open=false
65
- recycle_log_file_num=0
66
- db_host_id=__hostname__
67
- track_and_verify_wals_in_manifest=false
68
- use_fsync=false
69
- wal_compression=kNoCompression
70
- compaction_verify_record_count=true
71
- error_if_exists=false
72
- manifest_preallocation_size=4194304
73
- is_fd_close_on_exec=true
74
- enable_write_thread_adaptive_yield=true
75
- enable_thread_tracking=false
76
- avoid_unnecessary_blocking_io=true
77
- allow_fallocate=true
78
- max_log_file_size=0
79
- advise_random_on_open=true
80
- create_missing_column_families=true
81
- max_write_batch_group_size_bytes=1048576
82
- use_adaptive_mutex=false
83
- wal_filter=nullptr
84
- create_if_missing=true
85
- enforce_single_del_contracts=true
86
- allow_mmap_writes=false
87
- verify_sst_unique_id_in_manifest=true
88
- log_file_time_to_roll=0
89
- use_direct_io_for_flush_and_compaction=false
90
- flush_verify_memtable_count=true
91
- max_manifest_file_size=1073741824
92
- write_thread_max_yield_usec=100
93
- use_direct_reads=false
94
- allow_mmap_reads=false
95
-
96
-
97
- [CFOptions "default"]
98
- bottommost_file_compaction_delay=0
99
- memtable_protection_bytes_per_key=0
100
- compression_per_level=kNoCompression:kNoCompression:kZSTD:kZSTD:kZSTD:kZSTD:kZSTD
101
- bottommost_compression=kDisableCompressionOption
102
- sample_for_compression=0
103
- blob_garbage_collection_age_cutoff=0.250000
104
- blob_compression_type=kNoCompression
105
- compression=kZSTD
106
- default_write_temperature=kUnknown
107
- last_level_temperature=kUnknown
108
- compaction_options_universal={allow_trivial_move=false;stop_style=kCompactionStopStyleTotalSize;min_merge_width=2;compression_size_percent=-1;max_size_amplification_percent=200;incremental=false;max_merge_width=4294967295;size_ratio=1;}
109
- target_file_size_base=16000000
110
- memtable_whole_key_filtering=false
111
- blob_file_starting_level=0
112
- soft_pending_compaction_bytes_limit=68719476736
113
- max_write_buffer_number=6
114
- ttl=2592000
115
- compaction_options_fifo={file_temperature_age_thresholds=;allow_compaction=false;age_for_warm=0;max_table_files_size=1073741824;}
116
- memtable_huge_page_size=0
117
- max_sequential_skip_in_iterations=8
118
- strict_max_successive_merges=false
119
- max_successive_merges=0
120
- inplace_update_num_locks=10000
121
- enable_blob_garbage_collection=false
122
- arena_block_size=1048576
123
- bottommost_compression_opts={use_zstd_dict_trainer=true;enabled=false;zstd_max_train_bytes=0;parallel_threads=1;max_compressed_bytes_per_kb=896;checksum=false;max_dict_bytes=0;strategy=0;max_dict_buffer_bytes=0;level=32767;window_bits=-14;}
124
- target_file_size_multiplier=1
125
- max_bytes_for_level_multiplier_additional=1:1:1:1:1:1:1
126
- prepopulate_blob_cache=kDisable
127
- blob_compaction_readahead_size=0
128
- min_blob_size=0
129
- level0_stop_writes_trigger=36
130
- blob_garbage_collection_force_threshold=1.000000
131
- enable_blob_files=false
132
- level0_slowdown_writes_trigger=20
133
- level0_file_num_compaction_trigger=2
134
- block_protection_bytes_per_key=0
135
- prefix_extractor=nullptr
136
- max_bytes_for_level_multiplier=10.000000
137
- write_buffer_size=67108864
138
- disable_auto_compactions=false
139
- max_compaction_bytes=400000000
140
- memtable_max_range_deletions=0
141
- compression_opts={use_zstd_dict_trainer=true;enabled=false;zstd_max_train_bytes=1638400;parallel_threads=1;max_compressed_bytes_per_kb=896;checksum=false;max_dict_bytes=16384;strategy=0;max_dict_buffer_bytes=0;level=32767;window_bits=-14;}
142
- hard_pending_compaction_bytes_limit=274877906944
143
- blob_file_size=268435456
144
- periodic_compaction_seconds=0
145
- paranoid_file_checks=false
146
- experimental_mempurge_threshold=0.000000
147
- memtable_prefix_bloom_size_ratio=0.000000
148
- max_bytes_for_level_base=128000000
149
- report_bg_io_stats=false
150
- sst_partitioner_factory=nullptr
151
- compaction_pri=kMinOverlappingRatio
152
- compaction_style=kCompactionStyleLevel
153
- compaction_filter_factory=nullptr
154
- compaction_filter=nullptr
155
- memtable_factory=SkipListFactory
156
- comparator=leveldb.BytewiseComparator
157
- bloom_locality=0
158
- min_write_buffer_number_to_merge=2
159
- table_factory=BlockBasedTable
160
- max_write_buffer_size_to_maintain=0
161
- max_write_buffer_number_to_maintain=0
162
- optimize_filters_for_hits=false
163
- default_temperature=kUnknown
164
- preserve_internal_time_seconds=0
165
- force_consistency_checks=true
166
- merge_operator=nullptr
167
- num_levels=7
168
- memtable_insert_with_hint_prefix_extractor=nullptr
169
- level_compaction_dynamic_level_bytes=true
170
- persist_user_defined_timestamps=true
171
- preclude_last_level_data_seconds=0
172
- inplace_update_support=false
173
-
174
- [TableOptions/BlockBasedTable "default"]
175
- num_file_reads_for_auto_readahead=2
176
- metadata_cache_options={unpartitioned_pinning=kFallback;partition_pinning=kFallback;top_level_index_pinning=kFallback;}
177
- read_amp_bytes_per_bit=0
178
- verify_compression=false
179
- format_version=5
180
- optimize_filters_for_memory=true
181
- partition_filters=false
182
- detect_filter_construct_corruption=false
183
- initial_auto_readahead_size=8192
184
- max_auto_readahead_size=262144
185
- enable_index_compression=true
186
- checksum=kXXH3
187
- index_block_restart_interval=1
188
- pin_top_level_index_and_filter=true
189
- block_align=false
190
- block_size=4096
191
- index_type=kBinarySearch
192
- filter_policy=bloomfilter:10:false
193
- metadata_block_size=4096
194
- no_block_cache=false
195
- whole_key_filtering=true
196
- index_shortening=kShortenSeparators
197
- block_size_deviation=10
198
- data_block_index_type=kDataBlockBinarySearch
199
- use_delta_encoding=true
200
- data_block_hash_table_util_ratio=0.750000
201
- cache_index_and_filter_blocks=false
202
- prepopulate_block_cache=kDisable
203
- block_restart_interval=16
204
- pin_l0_filter_and_index_blocks_in_cache=false
205
- cache_index_and_filter_blocks_with_high_priority=true
206
- flush_block_policy_factory=FlushBlockBySizePolicyFactory
207
-