@nxtedition/rocksdb 7.1.32 → 7.1.34
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/deps/rocksdb/rocksdb/cache/clock_cache.cc +402 -345
- package/deps/rocksdb/rocksdb/cache/clock_cache.h +121 -64
- package/deps/rocksdb/rocksdb/cache/lru_cache_test.cc +28 -18
- package/deps/rocksdb/rocksdb/db/arena_wrapped_db_iter.cc +1 -0
- package/deps/rocksdb/rocksdb/db/arena_wrapped_db_iter.h +2 -0
- package/deps/rocksdb/rocksdb/db/builder.cc +2 -1
- package/deps/rocksdb/rocksdb/db/c.cc +563 -673
- package/deps/rocksdb/rocksdb/db/c_test.c +168 -169
- package/deps/rocksdb/rocksdb/db/column_family.cc +16 -15
- package/deps/rocksdb/rocksdb/db/column_family.h +7 -7
- package/deps/rocksdb/rocksdb/db/column_family_test.cc +17 -28
- package/deps/rocksdb/rocksdb/db/compact_files_test.cc +4 -9
- package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator.cc +8 -3
- package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator_test.cc +114 -0
- package/deps/rocksdb/rocksdb/db/comparator_db_test.cc +2 -3
- package/deps/rocksdb/rocksdb/db/convenience.cc +3 -5
- package/deps/rocksdb/rocksdb/db/corruption_test.cc +10 -14
- package/deps/rocksdb/rocksdb/db/cuckoo_table_db_test.cc +9 -13
- package/deps/rocksdb/rocksdb/db/db_basic_test.cc +2 -2
- package/deps/rocksdb/rocksdb/db/db_block_cache_test.cc +2 -2
- package/deps/rocksdb/rocksdb/db/db_bloom_filter_test.cc +14 -16
- package/deps/rocksdb/rocksdb/db/db_compaction_test.cc +52 -72
- package/deps/rocksdb/rocksdb/db/db_dynamic_level_test.cc +2 -2
- package/deps/rocksdb/rocksdb/db/db_encryption_test.cc +12 -12
- package/deps/rocksdb/rocksdb/db/db_filesnapshot.cc +1 -2
- package/deps/rocksdb/rocksdb/db/db_flush_test.cc +3 -3
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl.cc +1 -12
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl.h +3 -0
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_write.cc +26 -0
- package/deps/rocksdb/rocksdb/db/db_info_dumper.cc +1 -0
- package/deps/rocksdb/rocksdb/db/db_iter.cc +12 -6
- package/deps/rocksdb/rocksdb/db/db_iter.h +1 -0
- package/deps/rocksdb/rocksdb/db/db_iter_stress_test.cc +6 -7
- package/deps/rocksdb/rocksdb/db/db_iter_test.cc +10 -8
- package/deps/rocksdb/rocksdb/db/db_iterator_test.cc +15 -13
- package/deps/rocksdb/rocksdb/db/db_log_iter_test.cc +7 -9
- package/deps/rocksdb/rocksdb/db/db_logical_block_size_cache_test.cc +4 -4
- package/deps/rocksdb/rocksdb/db/db_merge_operand_test.cc +1 -1
- package/deps/rocksdb/rocksdb/db/db_merge_operator_test.cc +2 -4
- package/deps/rocksdb/rocksdb/db/db_options_test.cc +4 -4
- package/deps/rocksdb/rocksdb/db/db_properties_test.cc +7 -4
- package/deps/rocksdb/rocksdb/db/db_range_del_test.cc +7 -5
- package/deps/rocksdb/rocksdb/db/db_secondary_test.cc +1 -1
- package/deps/rocksdb/rocksdb/db/db_statistics_test.cc +8 -6
- package/deps/rocksdb/rocksdb/db/db_table_properties_test.cc +18 -23
- package/deps/rocksdb/rocksdb/db/db_tailing_iter_test.cc +3 -5
- package/deps/rocksdb/rocksdb/db/db_test.cc +10 -5
- package/deps/rocksdb/rocksdb/db/db_test2.cc +172 -169
- package/deps/rocksdb/rocksdb/db/db_test_util.cc +68 -66
- package/deps/rocksdb/rocksdb/db/db_test_util.h +1 -3
- package/deps/rocksdb/rocksdb/db/db_universal_compaction_test.cc +31 -39
- package/deps/rocksdb/rocksdb/db/db_with_timestamp_basic_test.cc +182 -2
- package/deps/rocksdb/rocksdb/db/db_write_test.cc +43 -40
- package/deps/rocksdb/rocksdb/db/dbformat.h +15 -0
- package/deps/rocksdb/rocksdb/db/dbformat_test.cc +35 -34
- package/deps/rocksdb/rocksdb/db/deletefile_test.cc +10 -11
- package/deps/rocksdb/rocksdb/db/error_handler.cc +6 -6
- package/deps/rocksdb/rocksdb/db/error_handler.h +93 -94
- package/deps/rocksdb/rocksdb/db/event_helpers.cc +1 -1
- package/deps/rocksdb/rocksdb/db/event_helpers.h +3 -3
- package/deps/rocksdb/rocksdb/db/external_sst_file_ingestion_job.cc +16 -17
- package/deps/rocksdb/rocksdb/db/external_sst_file_test.cc +2 -2
- package/deps/rocksdb/rocksdb/db/fault_injection_test.cc +1 -2
- package/deps/rocksdb/rocksdb/db/file_indexer.cc +2 -0
- package/deps/rocksdb/rocksdb/db/file_indexer.h +2 -1
- package/deps/rocksdb/rocksdb/db/file_indexer_test.cc +4 -2
- package/deps/rocksdb/rocksdb/db/filename_test.cc +27 -29
- package/deps/rocksdb/rocksdb/db/flush_job.cc +7 -13
- package/deps/rocksdb/rocksdb/db/flush_job_test.cc +2 -2
- package/deps/rocksdb/rocksdb/db/forward_iterator.cc +15 -21
- package/deps/rocksdb/rocksdb/db/forward_iterator.h +7 -6
- package/deps/rocksdb/rocksdb/db/forward_iterator_bench.cc +4 -2
- package/deps/rocksdb/rocksdb/db/import_column_family_job.cc +2 -2
- package/deps/rocksdb/rocksdb/db/internal_stats.cc +59 -14
- package/deps/rocksdb/rocksdb/db/internal_stats.h +27 -11
- package/deps/rocksdb/rocksdb/db/job_context.h +5 -6
- package/deps/rocksdb/rocksdb/db/listener_test.cc +21 -23
- package/deps/rocksdb/rocksdb/db/log_reader.cc +7 -11
- package/deps/rocksdb/rocksdb/db/log_reader.h +4 -6
- package/deps/rocksdb/rocksdb/db/log_test.cc +6 -12
- package/deps/rocksdb/rocksdb/db/log_writer.h +1 -1
- package/deps/rocksdb/rocksdb/db/logs_with_prep_tracker.h +0 -1
- package/deps/rocksdb/rocksdb/db/lookup_key.h +4 -1
- package/deps/rocksdb/rocksdb/db/malloc_stats.cc +2 -1
- package/deps/rocksdb/rocksdb/db/manual_compaction_test.cc +3 -5
- package/deps/rocksdb/rocksdb/db/memtable.cc +34 -22
- package/deps/rocksdb/rocksdb/db/memtable.h +4 -6
- package/deps/rocksdb/rocksdb/db/memtable_list.cc +7 -0
- package/deps/rocksdb/rocksdb/db/memtable_list_test.cc +37 -13
- package/deps/rocksdb/rocksdb/db/merge_context.h +1 -0
- package/deps/rocksdb/rocksdb/db/merge_helper.cc +128 -14
- package/deps/rocksdb/rocksdb/db/merge_helper.h +15 -7
- package/deps/rocksdb/rocksdb/db/merge_helper_test.cc +2 -1
- package/deps/rocksdb/rocksdb/db/merge_operator.cc +5 -6
- package/deps/rocksdb/rocksdb/db/obsolete_files_test.cc +4 -3
- package/deps/rocksdb/rocksdb/db/options_file_test.cc +1 -1
- package/deps/rocksdb/rocksdb/db/perf_context_test.cc +55 -43
- package/deps/rocksdb/rocksdb/db/plain_table_db_test.cc +288 -299
- package/deps/rocksdb/rocksdb/db/prefix_test.cc +22 -27
- package/deps/rocksdb/rocksdb/db/range_del_aggregator.cc +1 -1
- package/deps/rocksdb/rocksdb/db/range_del_aggregator_test.cc +1 -1
- package/deps/rocksdb/rocksdb/db/repair.cc +7 -8
- package/deps/rocksdb/rocksdb/db/repair_test.cc +3 -4
- package/deps/rocksdb/rocksdb/db/snapshot_impl.cc +4 -5
- package/deps/rocksdb/rocksdb/db/snapshot_impl.h +10 -4
- package/deps/rocksdb/rocksdb/db/table_cache.cc +3 -4
- package/deps/rocksdb/rocksdb/db/table_properties_collector.cc +6 -7
- package/deps/rocksdb/rocksdb/db/table_properties_collector_test.cc +22 -22
- package/deps/rocksdb/rocksdb/db/transaction_log_impl.cc +12 -12
- package/deps/rocksdb/rocksdb/db/transaction_log_impl.h +6 -8
- package/deps/rocksdb/rocksdb/db/trim_history_scheduler.h +2 -0
- package/deps/rocksdb/rocksdb/db/version_builder_test.cc +3 -3
- package/deps/rocksdb/rocksdb/db/version_edit.cc +2 -5
- package/deps/rocksdb/rocksdb/db/version_edit.h +8 -12
- package/deps/rocksdb/rocksdb/db/version_set.cc +74 -102
- package/deps/rocksdb/rocksdb/db/version_set.h +8 -10
- package/deps/rocksdb/rocksdb/db/version_set_sync_and_async.h +0 -5
- package/deps/rocksdb/rocksdb/db/version_set_test.cc +47 -45
- package/deps/rocksdb/rocksdb/db/wal_manager.cc +6 -5
- package/deps/rocksdb/rocksdb/db/wal_manager.h +2 -2
- package/deps/rocksdb/rocksdb/db/wal_manager_test.cc +4 -3
- package/deps/rocksdb/rocksdb/db/wide/db_wide_basic_test.cc +144 -61
- package/deps/rocksdb/rocksdb/db/write_batch.cc +41 -24
- package/deps/rocksdb/rocksdb/db/write_batch_internal.h +2 -7
- package/deps/rocksdb/rocksdb/db/write_batch_test.cc +105 -104
- package/deps/rocksdb/rocksdb/db/write_callback_test.cc +5 -4
- package/deps/rocksdb/rocksdb/db/write_controller.h +1 -0
- package/deps/rocksdb/rocksdb/db/write_controller_test.cc +1 -1
- package/deps/rocksdb/rocksdb/db/write_thread.cc +8 -6
- package/deps/rocksdb/rocksdb/env/io_posix.h +6 -0
- package/deps/rocksdb/rocksdb/file/file_prefetch_buffer.cc +134 -65
- package/deps/rocksdb/rocksdb/file/file_prefetch_buffer.h +29 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/compaction_filter.h +1 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/db.h +1 -4
- package/deps/rocksdb/rocksdb/include/rocksdb/merge_operator.h +1 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/stackable_db.h +4 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/write_batch.h +14 -4
- package/deps/rocksdb/rocksdb/table/get_context.cc +52 -7
- package/deps/rocksdb/rocksdb/table/get_context.h +1 -2
- package/deps/rocksdb/rocksdb/tools/db_bench_tool.cc +13 -0
- package/deps/rocksdb/rocksdb/util/crc32c_arm64.cc +36 -4
- package/deps/rocksdb/rocksdb/utilities/transactions/transaction_test.cc +6 -6
- package/deps/rocksdb/rocksdb/utilities/transactions/transaction_test.h +23 -28
- package/deps/rocksdb/rocksdb/utilities/transactions/write_committed_transaction_ts_test.cc +11 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_transaction_test.cc +19 -17
- package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index_internal.cc +10 -7
- package/index.js +14 -16
- package/package.json +1 -1
- package/prebuilds/darwin-arm64/node.napi.node +0 -0
- package/prebuilds/linux-x64/node.napi.node +0 -0
|
@@ -125,28 +125,48 @@ using ROCKSDB_NAMESPACE::WriteBatch;
|
|
|
125
125
|
using ROCKSDB_NAMESPACE::WriteBatchWithIndex;
|
|
126
126
|
using ROCKSDB_NAMESPACE::WriteOptions;
|
|
127
127
|
|
|
128
|
-
using std::vector;
|
|
129
128
|
using std::unordered_set;
|
|
129
|
+
using std::vector;
|
|
130
130
|
|
|
131
131
|
extern "C" {
|
|
132
132
|
|
|
133
|
-
struct rocksdb_t
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
struct
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
struct
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
struct
|
|
133
|
+
struct rocksdb_t {
|
|
134
|
+
DB* rep;
|
|
135
|
+
};
|
|
136
|
+
struct rocksdb_backup_engine_t {
|
|
137
|
+
BackupEngine* rep;
|
|
138
|
+
};
|
|
139
|
+
struct rocksdb_backup_engine_info_t {
|
|
140
|
+
std::vector<BackupInfo> rep;
|
|
141
|
+
};
|
|
142
|
+
struct rocksdb_restore_options_t {
|
|
143
|
+
RestoreOptions rep;
|
|
144
|
+
};
|
|
145
|
+
struct rocksdb_iterator_t {
|
|
146
|
+
Iterator* rep;
|
|
147
|
+
};
|
|
148
|
+
struct rocksdb_writebatch_t {
|
|
149
|
+
WriteBatch rep;
|
|
150
|
+
};
|
|
151
|
+
struct rocksdb_writebatch_wi_t {
|
|
152
|
+
WriteBatchWithIndex* rep;
|
|
153
|
+
};
|
|
154
|
+
struct rocksdb_snapshot_t {
|
|
155
|
+
const Snapshot* rep;
|
|
156
|
+
};
|
|
157
|
+
struct rocksdb_flushoptions_t {
|
|
158
|
+
FlushOptions rep;
|
|
159
|
+
};
|
|
160
|
+
struct rocksdb_fifo_compaction_options_t {
|
|
161
|
+
CompactionOptionsFIFO rep;
|
|
162
|
+
};
|
|
143
163
|
struct rocksdb_readoptions_t {
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
164
|
+
ReadOptions rep;
|
|
165
|
+
// stack variables to set pointers to in ReadOptions
|
|
166
|
+
Slice upper_bound;
|
|
167
|
+
Slice lower_bound;
|
|
168
|
+
Slice timestamp;
|
|
169
|
+
Slice iter_start_ts;
|
|
150
170
|
};
|
|
151
171
|
struct rocksdb_writeoptions_t {
|
|
152
172
|
WriteOptions rep;
|
|
@@ -164,12 +184,24 @@ struct rocksdb_block_based_table_options_t {
|
|
|
164
184
|
struct rocksdb_cuckoo_table_options_t {
|
|
165
185
|
CuckooTableOptions rep;
|
|
166
186
|
};
|
|
167
|
-
struct rocksdb_seqfile_t
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
struct
|
|
171
|
-
|
|
172
|
-
|
|
187
|
+
struct rocksdb_seqfile_t {
|
|
188
|
+
SequentialFile* rep;
|
|
189
|
+
};
|
|
190
|
+
struct rocksdb_randomfile_t {
|
|
191
|
+
RandomAccessFile* rep;
|
|
192
|
+
};
|
|
193
|
+
struct rocksdb_writablefile_t {
|
|
194
|
+
WritableFile* rep;
|
|
195
|
+
};
|
|
196
|
+
struct rocksdb_wal_iterator_t {
|
|
197
|
+
TransactionLogIterator* rep;
|
|
198
|
+
};
|
|
199
|
+
struct rocksdb_wal_readoptions_t {
|
|
200
|
+
TransactionLogIterator::ReadOptions rep;
|
|
201
|
+
};
|
|
202
|
+
struct rocksdb_filelock_t {
|
|
203
|
+
FileLock* rep;
|
|
204
|
+
};
|
|
173
205
|
struct rocksdb_logger_t {
|
|
174
206
|
std::shared_ptr<Logger> rep;
|
|
175
207
|
};
|
|
@@ -182,8 +214,12 @@ struct rocksdb_memory_allocator_t {
|
|
|
182
214
|
struct rocksdb_cache_t {
|
|
183
215
|
std::shared_ptr<Cache> rep;
|
|
184
216
|
};
|
|
185
|
-
struct rocksdb_livefiles_t
|
|
186
|
-
|
|
217
|
+
struct rocksdb_livefiles_t {
|
|
218
|
+
std::vector<LiveFileMetaData> rep;
|
|
219
|
+
};
|
|
220
|
+
struct rocksdb_column_family_handle_t {
|
|
221
|
+
ColumnFamilyHandle* rep;
|
|
222
|
+
};
|
|
187
223
|
struct rocksdb_column_family_metadata_t {
|
|
188
224
|
ColumnFamilyMetaData rep;
|
|
189
225
|
};
|
|
@@ -193,13 +229,21 @@ struct rocksdb_level_metadata_t {
|
|
|
193
229
|
struct rocksdb_sst_file_metadata_t {
|
|
194
230
|
const SstFileMetaData* rep;
|
|
195
231
|
};
|
|
196
|
-
struct rocksdb_envoptions_t
|
|
197
|
-
|
|
198
|
-
|
|
232
|
+
struct rocksdb_envoptions_t {
|
|
233
|
+
EnvOptions rep;
|
|
234
|
+
};
|
|
235
|
+
struct rocksdb_ingestexternalfileoptions_t {
|
|
236
|
+
IngestExternalFileOptions rep;
|
|
237
|
+
};
|
|
238
|
+
struct rocksdb_sstfilewriter_t {
|
|
239
|
+
SstFileWriter* rep;
|
|
240
|
+
};
|
|
199
241
|
struct rocksdb_ratelimiter_t {
|
|
200
242
|
std::shared_ptr<RateLimiter> rep;
|
|
201
243
|
};
|
|
202
|
-
struct rocksdb_perfcontext_t
|
|
244
|
+
struct rocksdb_perfcontext_t {
|
|
245
|
+
PerfContext* rep;
|
|
246
|
+
};
|
|
203
247
|
struct rocksdb_pinnableslice_t {
|
|
204
248
|
PinnableSlice rep;
|
|
205
249
|
};
|
|
@@ -235,13 +279,10 @@ struct rocksdb_compactionfiltercontext_t {
|
|
|
235
279
|
struct rocksdb_compactionfilter_t : public CompactionFilter {
|
|
236
280
|
void* state_;
|
|
237
281
|
void (*destructor_)(void*);
|
|
238
|
-
unsigned char (*filter_)(
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
const char* existing_value, size_t value_length,
|
|
243
|
-
char** new_value, size_t *new_value_length,
|
|
244
|
-
unsigned char* value_changed);
|
|
282
|
+
unsigned char (*filter_)(void*, int level, const char* key, size_t key_length,
|
|
283
|
+
const char* existing_value, size_t value_length,
|
|
284
|
+
char** new_value, size_t* new_value_length,
|
|
285
|
+
unsigned char* value_changed);
|
|
245
286
|
const char* (*name_)(void*);
|
|
246
287
|
unsigned char ignore_snapshots_;
|
|
247
288
|
|
|
@@ -252,12 +293,10 @@ struct rocksdb_compactionfilter_t : public CompactionFilter {
|
|
|
252
293
|
char* c_new_value = nullptr;
|
|
253
294
|
size_t new_value_length = 0;
|
|
254
295
|
unsigned char c_value_changed = 0;
|
|
255
|
-
unsigned char result =
|
|
256
|
-
state_,
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
existing_value.data(), existing_value.size(),
|
|
260
|
-
&c_new_value, &new_value_length, &c_value_changed);
|
|
296
|
+
unsigned char result =
|
|
297
|
+
(*filter_)(state_, level, key.data(), key.size(), existing_value.data(),
|
|
298
|
+
existing_value.size(), &c_new_value, &new_value_length,
|
|
299
|
+
&c_value_changed);
|
|
261
300
|
if (c_value_changed) {
|
|
262
301
|
new_value->assign(c_new_value, new_value_length);
|
|
263
302
|
*value_changed = true;
|
|
@@ -350,20 +389,16 @@ struct rocksdb_mergeoperator_t : public MergeOperator {
|
|
|
350
389
|
void* state_;
|
|
351
390
|
void (*destructor_)(void*);
|
|
352
391
|
const char* (*name_)(void*);
|
|
353
|
-
char* (*full_merge_)(
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
int num_operands,
|
|
359
|
-
unsigned char* success, size_t* new_value_length);
|
|
392
|
+
char* (*full_merge_)(void*, const char* key, size_t key_length,
|
|
393
|
+
const char* existing_value, size_t existing_value_length,
|
|
394
|
+
const char* const* operands_list,
|
|
395
|
+
const size_t* operands_list_length, int num_operands,
|
|
396
|
+
unsigned char* success, size_t* new_value_length);
|
|
360
397
|
char* (*partial_merge_)(void*, const char* key, size_t key_length,
|
|
361
398
|
const char* const* operands_list,
|
|
362
399
|
const size_t* operands_list_length, int num_operands,
|
|
363
400
|
unsigned char* success, size_t* new_value_length);
|
|
364
|
-
void (*delete_value_)(
|
|
365
|
-
void*,
|
|
366
|
-
const char* value, size_t value_length);
|
|
401
|
+
void (*delete_value_)(void*, const char* value, size_t value_length);
|
|
367
402
|
|
|
368
403
|
~rocksdb_mergeoperator_t() override { (*destructor_)(state_); }
|
|
369
404
|
|
|
@@ -447,16 +482,10 @@ struct rocksdb_slicetransform_t : public SliceTransform {
|
|
|
447
482
|
void* state_;
|
|
448
483
|
void (*destructor_)(void*);
|
|
449
484
|
const char* (*name_)(void*);
|
|
450
|
-
char* (*transform_)(
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
unsigned char (*in_domain_)(
|
|
455
|
-
void*,
|
|
456
|
-
const char* key, size_t length);
|
|
457
|
-
unsigned char (*in_range_)(
|
|
458
|
-
void*,
|
|
459
|
-
const char* key, size_t length);
|
|
485
|
+
char* (*transform_)(void*, const char* key, size_t length,
|
|
486
|
+
size_t* dst_length);
|
|
487
|
+
unsigned char (*in_domain_)(void*, const char* key, size_t length);
|
|
488
|
+
unsigned char (*in_range_)(void*, const char* key, size_t length);
|
|
460
489
|
|
|
461
490
|
~rocksdb_slicetransform_t() override { (*destructor_)(state_); }
|
|
462
491
|
|
|
@@ -502,10 +531,8 @@ static char* CopyString(const std::string& str) {
|
|
|
502
531
|
return result;
|
|
503
532
|
}
|
|
504
533
|
|
|
505
|
-
rocksdb_t* rocksdb_open(
|
|
506
|
-
|
|
507
|
-
const char* name,
|
|
508
|
-
char** errptr) {
|
|
534
|
+
rocksdb_t* rocksdb_open(const rocksdb_options_t* options, const char* name,
|
|
535
|
+
char** errptr) {
|
|
509
536
|
DB* db;
|
|
510
537
|
if (SaveError(errptr, DB::Open(options->rep, std::string(name), &db))) {
|
|
511
538
|
return nullptr;
|
|
@@ -515,11 +542,8 @@ rocksdb_t* rocksdb_open(
|
|
|
515
542
|
return result;
|
|
516
543
|
}
|
|
517
544
|
|
|
518
|
-
rocksdb_t* rocksdb_open_with_ttl(
|
|
519
|
-
|
|
520
|
-
const char* name,
|
|
521
|
-
int ttl,
|
|
522
|
-
char** errptr) {
|
|
545
|
+
rocksdb_t* rocksdb_open_with_ttl(const rocksdb_options_t* options,
|
|
546
|
+
const char* name, int ttl, char** errptr) {
|
|
523
547
|
ROCKSDB_NAMESPACE::DBWithTTL* db;
|
|
524
548
|
if (SaveError(errptr, ROCKSDB_NAMESPACE::DBWithTTL::Open(
|
|
525
549
|
options->rep, std::string(name), &db, ttl))) {
|
|
@@ -587,15 +611,13 @@ rocksdb_backup_engine_t* rocksdb_backup_engine_open_opts(
|
|
|
587
611
|
}
|
|
588
612
|
|
|
589
613
|
void rocksdb_backup_engine_create_new_backup(rocksdb_backup_engine_t* be,
|
|
590
|
-
rocksdb_t* db,
|
|
591
|
-
char** errptr) {
|
|
614
|
+
rocksdb_t* db, char** errptr) {
|
|
592
615
|
SaveError(errptr, be->rep->CreateNewBackup(db->rep));
|
|
593
616
|
}
|
|
594
617
|
|
|
595
|
-
void rocksdb_backup_engine_create_new_backup_flush(
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
char** errptr) {
|
|
618
|
+
void rocksdb_backup_engine_create_new_backup_flush(
|
|
619
|
+
rocksdb_backup_engine_t* be, rocksdb_t* db,
|
|
620
|
+
unsigned char flush_before_backup, char** errptr) {
|
|
599
621
|
SaveError(errptr, be->rep->CreateNewBackup(db->rep, flush_before_backup));
|
|
600
622
|
}
|
|
601
623
|
|
|
@@ -618,9 +640,8 @@ void rocksdb_restore_options_set_keep_log_files(rocksdb_restore_options_t* opt,
|
|
|
618
640
|
opt->rep.keep_log_files = v;
|
|
619
641
|
}
|
|
620
642
|
|
|
621
|
-
|
|
622
643
|
void rocksdb_backup_engine_verify_backup(rocksdb_backup_engine_t* be,
|
|
623
|
-
|
|
644
|
+
uint32_t backup_id, char** errptr) {
|
|
624
645
|
SaveError(errptr, be->rep->VerifyBackup(static_cast<BackupID>(backup_id)));
|
|
625
646
|
}
|
|
626
647
|
|
|
@@ -885,13 +906,14 @@ rocksdb_t* rocksdb_open_column_families(
|
|
|
885
906
|
|
|
886
907
|
DB* db;
|
|
887
908
|
std::vector<ColumnFamilyHandle*> handles;
|
|
888
|
-
if (SaveError(errptr, DB::Open(DBOptions(db_options->rep),
|
|
889
|
-
|
|
909
|
+
if (SaveError(errptr, DB::Open(DBOptions(db_options->rep), std::string(name),
|
|
910
|
+
column_families, &handles, &db))) {
|
|
890
911
|
return nullptr;
|
|
891
912
|
}
|
|
892
913
|
|
|
893
914
|
for (size_t i = 0; i < handles.size(); i++) {
|
|
894
|
-
rocksdb_column_family_handle_t* c_handle =
|
|
915
|
+
rocksdb_column_family_handle_t* c_handle =
|
|
916
|
+
new rocksdb_column_family_handle_t;
|
|
895
917
|
c_handle->rep = handles[i];
|
|
896
918
|
column_family_handles[i] = c_handle;
|
|
897
919
|
}
|
|
@@ -958,7 +980,8 @@ rocksdb_t* rocksdb_open_for_read_only_column_families(
|
|
|
958
980
|
}
|
|
959
981
|
|
|
960
982
|
for (size_t i = 0; i < handles.size(); i++) {
|
|
961
|
-
rocksdb_column_family_handle_t* c_handle =
|
|
983
|
+
rocksdb_column_family_handle_t* c_handle =
|
|
984
|
+
new rocksdb_column_family_handle_t;
|
|
962
985
|
c_handle->rep = handles[i];
|
|
963
986
|
column_family_handles[i] = c_handle;
|
|
964
987
|
}
|
|
@@ -998,18 +1021,16 @@ rocksdb_t* rocksdb_open_as_secondary_column_families(
|
|
|
998
1021
|
return result;
|
|
999
1022
|
}
|
|
1000
1023
|
|
|
1001
|
-
char** rocksdb_list_column_families(
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
size_t* lencfs,
|
|
1005
|
-
char** errptr) {
|
|
1024
|
+
char** rocksdb_list_column_families(const rocksdb_options_t* options,
|
|
1025
|
+
const char* name, size_t* lencfs,
|
|
1026
|
+
char** errptr) {
|
|
1006
1027
|
std::vector<std::string> fams;
|
|
1007
|
-
SaveError(errptr,
|
|
1008
|
-
|
|
1009
|
-
std::string(name), &fams));
|
|
1028
|
+
SaveError(errptr, DB::ListColumnFamilies(DBOptions(options->rep),
|
|
1029
|
+
std::string(name), &fams));
|
|
1010
1030
|
|
|
1011
1031
|
*lencfs = fams.size();
|
|
1012
|
-
char** column_families =
|
|
1032
|
+
char** column_families =
|
|
1033
|
+
static_cast<char**>(malloc(sizeof(char*) * fams.size()));
|
|
1013
1034
|
for (size_t i = 0; i < fams.size(); i++) {
|
|
1014
1035
|
column_families[i] = strdup(fams[i].c_str());
|
|
1015
1036
|
}
|
|
@@ -1024,14 +1045,12 @@ void rocksdb_list_column_families_destroy(char** list, size_t len) {
|
|
|
1024
1045
|
}
|
|
1025
1046
|
|
|
1026
1047
|
rocksdb_column_family_handle_t* rocksdb_create_column_family(
|
|
1027
|
-
rocksdb_t* db,
|
|
1028
|
-
const
|
|
1029
|
-
const char* column_family_name,
|
|
1030
|
-
char** errptr) {
|
|
1048
|
+
rocksdb_t* db, const rocksdb_options_t* column_family_options,
|
|
1049
|
+
const char* column_family_name, char** errptr) {
|
|
1031
1050
|
rocksdb_column_family_handle_t* handle = new rocksdb_column_family_handle_t;
|
|
1032
|
-
SaveError(errptr,
|
|
1033
|
-
|
|
1034
|
-
|
|
1051
|
+
SaveError(errptr, db->rep->CreateColumnFamily(
|
|
1052
|
+
ColumnFamilyOptions(column_family_options->rep),
|
|
1053
|
+
std::string(column_family_name), &(handle->rep)));
|
|
1035
1054
|
return handle;
|
|
1036
1055
|
}
|
|
1037
1056
|
|
|
@@ -1047,10 +1066,9 @@ rocksdb_column_family_handle_t* rocksdb_create_column_family_with_ttl(
|
|
|
1047
1066
|
return handle;
|
|
1048
1067
|
}
|
|
1049
1068
|
|
|
1050
|
-
void rocksdb_drop_column_family(
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
char** errptr) {
|
|
1069
|
+
void rocksdb_drop_column_family(rocksdb_t* db,
|
|
1070
|
+
rocksdb_column_family_handle_t* handle,
|
|
1071
|
+
char** errptr) {
|
|
1054
1072
|
SaveError(errptr, db->rep->DropColumnFamily(handle->rep));
|
|
1055
1073
|
}
|
|
1056
1074
|
|
|
@@ -1066,17 +1084,15 @@ char* rocksdb_column_family_handle_get_name(
|
|
|
1066
1084
|
return CopyString(name);
|
|
1067
1085
|
}
|
|
1068
1086
|
|
|
1069
|
-
void rocksdb_column_family_handle_destroy(
|
|
1087
|
+
void rocksdb_column_family_handle_destroy(
|
|
1088
|
+
rocksdb_column_family_handle_t* handle) {
|
|
1070
1089
|
delete handle->rep;
|
|
1071
1090
|
delete handle;
|
|
1072
1091
|
}
|
|
1073
1092
|
|
|
1074
|
-
void rocksdb_put(
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
const char* key, size_t keylen,
|
|
1078
|
-
const char* val, size_t vallen,
|
|
1079
|
-
char** errptr) {
|
|
1093
|
+
void rocksdb_put(rocksdb_t* db, const rocksdb_writeoptions_t* options,
|
|
1094
|
+
const char* key, size_t keylen, const char* val, size_t vallen,
|
|
1095
|
+
char** errptr) {
|
|
1080
1096
|
SaveError(errptr,
|
|
1081
1097
|
db->rep->Put(options->rep, Slice(key, keylen), Slice(val, vallen)));
|
|
1082
1098
|
}
|
|
@@ -1113,12 +1129,9 @@ void rocksdb_delete(rocksdb_t* db, const rocksdb_writeoptions_t* options,
|
|
|
1113
1129
|
SaveError(errptr, db->rep->Delete(options->rep, Slice(key, keylen)));
|
|
1114
1130
|
}
|
|
1115
1131
|
|
|
1116
|
-
void rocksdb_delete_cf(
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
rocksdb_column_family_handle_t* column_family,
|
|
1120
|
-
const char* key, size_t keylen,
|
|
1121
|
-
char** errptr) {
|
|
1132
|
+
void rocksdb_delete_cf(rocksdb_t* db, const rocksdb_writeoptions_t* options,
|
|
1133
|
+
rocksdb_column_family_handle_t* column_family,
|
|
1134
|
+
const char* key, size_t keylen, char** errptr) {
|
|
1122
1135
|
SaveError(errptr, db->rep->Delete(options->rep, column_family->rep,
|
|
1123
1136
|
Slice(key, keylen)));
|
|
1124
1137
|
}
|
|
@@ -1215,25 +1228,18 @@ void rocksdb_merge_cf(rocksdb_t* db, const rocksdb_writeoptions_t* options,
|
|
|
1215
1228
|
rocksdb_column_family_handle_t* column_family,
|
|
1216
1229
|
const char* key, size_t keylen, const char* val,
|
|
1217
1230
|
size_t vallen, char** errptr) {
|
|
1218
|
-
SaveError(errptr,
|
|
1219
|
-
|
|
1220
|
-
Slice(key, keylen), Slice(val, vallen)));
|
|
1231
|
+
SaveError(errptr, db->rep->Merge(options->rep, column_family->rep,
|
|
1232
|
+
Slice(key, keylen), Slice(val, vallen)));
|
|
1221
1233
|
}
|
|
1222
1234
|
|
|
1223
|
-
void rocksdb_write(
|
|
1224
|
-
|
|
1225
|
-
const rocksdb_writeoptions_t* options,
|
|
1226
|
-
rocksdb_writebatch_t* batch,
|
|
1227
|
-
char** errptr) {
|
|
1235
|
+
void rocksdb_write(rocksdb_t* db, const rocksdb_writeoptions_t* options,
|
|
1236
|
+
rocksdb_writebatch_t* batch, char** errptr) {
|
|
1228
1237
|
SaveError(errptr, db->rep->Write(options->rep, &batch->rep));
|
|
1229
1238
|
}
|
|
1230
1239
|
|
|
1231
|
-
char* rocksdb_get(
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
const char* key, size_t keylen,
|
|
1235
|
-
size_t* vallen,
|
|
1236
|
-
char** errptr) {
|
|
1240
|
+
char* rocksdb_get(rocksdb_t* db, const rocksdb_readoptions_t* options,
|
|
1241
|
+
const char* key, size_t keylen, size_t* vallen,
|
|
1242
|
+
char** errptr) {
|
|
1237
1243
|
char* result = nullptr;
|
|
1238
1244
|
std::string tmp;
|
|
1239
1245
|
Status s = db->rep->Get(options->rep, Slice(key, keylen), &tmp);
|
|
@@ -1249,17 +1255,14 @@ char* rocksdb_get(
|
|
|
1249
1255
|
return result;
|
|
1250
1256
|
}
|
|
1251
1257
|
|
|
1252
|
-
char* rocksdb_get_cf(
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
const char* key, size_t keylen,
|
|
1257
|
-
size_t* vallen,
|
|
1258
|
-
char** errptr) {
|
|
1258
|
+
char* rocksdb_get_cf(rocksdb_t* db, const rocksdb_readoptions_t* options,
|
|
1259
|
+
rocksdb_column_family_handle_t* column_family,
|
|
1260
|
+
const char* key, size_t keylen, size_t* vallen,
|
|
1261
|
+
char** errptr) {
|
|
1259
1262
|
char* result = nullptr;
|
|
1260
1263
|
std::string tmp;
|
|
1261
|
-
Status s =
|
|
1262
|
-
Slice(key, keylen), &tmp);
|
|
1264
|
+
Status s =
|
|
1265
|
+
db->rep->Get(options->rep, column_family->rep, Slice(key, keylen), &tmp);
|
|
1263
1266
|
if (s.ok()) {
|
|
1264
1267
|
*vallen = tmp.size();
|
|
1265
1268
|
result = CopyString(tmp);
|
|
@@ -1539,21 +1542,19 @@ unsigned char rocksdb_key_may_exist_cf(
|
|
|
1539
1542
|
}
|
|
1540
1543
|
|
|
1541
1544
|
rocksdb_iterator_t* rocksdb_create_iterator(
|
|
1542
|
-
rocksdb_t* db,
|
|
1543
|
-
const rocksdb_readoptions_t* options) {
|
|
1545
|
+
rocksdb_t* db, const rocksdb_readoptions_t* options) {
|
|
1544
1546
|
rocksdb_iterator_t* result = new rocksdb_iterator_t;
|
|
1545
1547
|
result->rep = db->rep->NewIterator(options->rep);
|
|
1546
1548
|
return result;
|
|
1547
1549
|
}
|
|
1548
1550
|
|
|
1549
1551
|
rocksdb_wal_iterator_t* rocksdb_get_updates_since(
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
char** errptr) {
|
|
1552
|
+
rocksdb_t* db, uint64_t seq_number,
|
|
1553
|
+
const rocksdb_wal_readoptions_t* options, char** errptr) {
|
|
1553
1554
|
std::unique_ptr<TransactionLogIterator> iter;
|
|
1554
1555
|
TransactionLogIterator::ReadOptions ro;
|
|
1555
|
-
if (options!=nullptr) {
|
|
1556
|
-
|
|
1556
|
+
if (options != nullptr) {
|
|
1557
|
+
ro = options->rep;
|
|
1557
1558
|
}
|
|
1558
1559
|
if (SaveError(errptr, db->rep->GetUpdatesSince(seq_number, &iter, ro))) {
|
|
1559
1560
|
return nullptr;
|
|
@@ -1563,24 +1564,24 @@ rocksdb_wal_iterator_t* rocksdb_get_updates_since(
|
|
|
1563
1564
|
return result;
|
|
1564
1565
|
}
|
|
1565
1566
|
|
|
1566
|
-
void rocksdb_wal_iter_next(rocksdb_wal_iterator_t* iter) {
|
|
1567
|
-
iter->rep->Next();
|
|
1568
|
-
}
|
|
1567
|
+
void rocksdb_wal_iter_next(rocksdb_wal_iterator_t* iter) { iter->rep->Next(); }
|
|
1569
1568
|
|
|
1570
1569
|
unsigned char rocksdb_wal_iter_valid(const rocksdb_wal_iterator_t* iter) {
|
|
1571
|
-
|
|
1570
|
+
return iter->rep->Valid();
|
|
1572
1571
|
}
|
|
1573
1572
|
|
|
1574
|
-
void rocksdb_wal_iter_status
|
|
1575
|
-
|
|
1573
|
+
void rocksdb_wal_iter_status(const rocksdb_wal_iterator_t* iter,
|
|
1574
|
+
char** errptr) {
|
|
1575
|
+
SaveError(errptr, iter->rep->status());
|
|
1576
1576
|
}
|
|
1577
1577
|
|
|
1578
|
-
void rocksdb_wal_iter_destroy
|
|
1578
|
+
void rocksdb_wal_iter_destroy(const rocksdb_wal_iterator_t* iter) {
|
|
1579
1579
|
delete iter->rep;
|
|
1580
1580
|
delete iter;
|
|
1581
1581
|
}
|
|
1582
1582
|
|
|
1583
|
-
rocksdb_writebatch_t* rocksdb_wal_iter_get_batch
|
|
1583
|
+
rocksdb_writebatch_t* rocksdb_wal_iter_get_batch(
|
|
1584
|
+
const rocksdb_wal_iterator_t* iter, uint64_t* seq) {
|
|
1584
1585
|
rocksdb_writebatch_t* result = rocksdb_writebatch_create();
|
|
1585
1586
|
BatchResult wal_batch = iter->rep->GetBatch();
|
|
1586
1587
|
result->rep = std::move(*wal_batch.writeBatchPtr);
|
|
@@ -1590,26 +1591,22 @@ rocksdb_writebatch_t* rocksdb_wal_iter_get_batch (const rocksdb_wal_iterator_t*
|
|
|
1590
1591
|
return result;
|
|
1591
1592
|
}
|
|
1592
1593
|
|
|
1593
|
-
uint64_t rocksdb_get_latest_sequence_number
|
|
1594
|
-
|
|
1594
|
+
uint64_t rocksdb_get_latest_sequence_number(rocksdb_t* db) {
|
|
1595
|
+
return db->rep->GetLatestSequenceNumber();
|
|
1595
1596
|
}
|
|
1596
1597
|
|
|
1597
1598
|
rocksdb_iterator_t* rocksdb_create_iterator_cf(
|
|
1598
|
-
rocksdb_t* db,
|
|
1599
|
-
const rocksdb_readoptions_t* options,
|
|
1599
|
+
rocksdb_t* db, const rocksdb_readoptions_t* options,
|
|
1600
1600
|
rocksdb_column_family_handle_t* column_family) {
|
|
1601
1601
|
rocksdb_iterator_t* result = new rocksdb_iterator_t;
|
|
1602
1602
|
result->rep = db->rep->NewIterator(options->rep, column_family->rep);
|
|
1603
1603
|
return result;
|
|
1604
1604
|
}
|
|
1605
1605
|
|
|
1606
|
-
void rocksdb_create_iterators(
|
|
1607
|
-
|
|
1608
|
-
|
|
1609
|
-
|
|
1610
|
-
rocksdb_iterator_t** iterators,
|
|
1611
|
-
size_t size,
|
|
1612
|
-
char** errptr) {
|
|
1606
|
+
void rocksdb_create_iterators(rocksdb_t* db, rocksdb_readoptions_t* opts,
|
|
1607
|
+
rocksdb_column_family_handle_t** column_families,
|
|
1608
|
+
rocksdb_iterator_t** iterators, size_t size,
|
|
1609
|
+
char** errptr) {
|
|
1613
1610
|
std::vector<ColumnFamilyHandle*> column_families_vec;
|
|
1614
1611
|
for (size_t i = 0; i < size; i++) {
|
|
1615
1612
|
column_families_vec.push_back(column_families[i]->rep);
|
|
@@ -1628,23 +1625,19 @@ void rocksdb_create_iterators(
|
|
|
1628
1625
|
}
|
|
1629
1626
|
}
|
|
1630
1627
|
|
|
1631
|
-
const rocksdb_snapshot_t* rocksdb_create_snapshot(
|
|
1632
|
-
rocksdb_t* db) {
|
|
1628
|
+
const rocksdb_snapshot_t* rocksdb_create_snapshot(rocksdb_t* db) {
|
|
1633
1629
|
rocksdb_snapshot_t* result = new rocksdb_snapshot_t;
|
|
1634
1630
|
result->rep = db->rep->GetSnapshot();
|
|
1635
1631
|
return result;
|
|
1636
1632
|
}
|
|
1637
1633
|
|
|
1638
|
-
void rocksdb_release_snapshot(
|
|
1639
|
-
|
|
1640
|
-
const rocksdb_snapshot_t* snapshot) {
|
|
1634
|
+
void rocksdb_release_snapshot(rocksdb_t* db,
|
|
1635
|
+
const rocksdb_snapshot_t* snapshot) {
|
|
1641
1636
|
db->rep->ReleaseSnapshot(snapshot->rep);
|
|
1642
1637
|
delete snapshot;
|
|
1643
1638
|
}
|
|
1644
1639
|
|
|
1645
|
-
char* rocksdb_property_value(
|
|
1646
|
-
rocksdb_t* db,
|
|
1647
|
-
const char* propname) {
|
|
1640
|
+
char* rocksdb_property_value(rocksdb_t* db, const char* propname) {
|
|
1648
1641
|
std::string tmp;
|
|
1649
1642
|
if (db->rep->GetProperty(Slice(propname), &tmp)) {
|
|
1650
1643
|
// We use strdup() since we expect human readable output.
|
|
@@ -1654,10 +1647,8 @@ char* rocksdb_property_value(
|
|
|
1654
1647
|
}
|
|
1655
1648
|
}
|
|
1656
1649
|
|
|
1657
|
-
int rocksdb_property_int(
|
|
1658
|
-
|
|
1659
|
-
const char* propname,
|
|
1660
|
-
uint64_t *out_val) {
|
|
1650
|
+
int rocksdb_property_int(rocksdb_t* db, const char* propname,
|
|
1651
|
+
uint64_t* out_val) {
|
|
1661
1652
|
if (db->rep->GetIntProperty(Slice(propname), out_val)) {
|
|
1662
1653
|
return 0;
|
|
1663
1654
|
} else {
|
|
@@ -1665,11 +1656,9 @@ int rocksdb_property_int(
|
|
|
1665
1656
|
}
|
|
1666
1657
|
}
|
|
1667
1658
|
|
|
1668
|
-
int rocksdb_property_int_cf(
|
|
1669
|
-
|
|
1670
|
-
|
|
1671
|
-
const char* propname,
|
|
1672
|
-
uint64_t *out_val) {
|
|
1659
|
+
int rocksdb_property_int_cf(rocksdb_t* db,
|
|
1660
|
+
rocksdb_column_family_handle_t* column_family,
|
|
1661
|
+
const char* propname, uint64_t* out_val) {
|
|
1673
1662
|
if (db->rep->GetIntProperty(column_family->rep, Slice(propname), out_val)) {
|
|
1674
1663
|
return 0;
|
|
1675
1664
|
} else {
|
|
@@ -1677,10 +1666,9 @@ int rocksdb_property_int_cf(
|
|
|
1677
1666
|
}
|
|
1678
1667
|
}
|
|
1679
1668
|
|
|
1680
|
-
char* rocksdb_property_value_cf(
|
|
1681
|
-
|
|
1682
|
-
|
|
1683
|
-
const char* propname) {
|
|
1669
|
+
char* rocksdb_property_value_cf(rocksdb_t* db,
|
|
1670
|
+
rocksdb_column_family_handle_t* column_family,
|
|
1671
|
+
const char* propname) {
|
|
1684
1672
|
std::string tmp;
|
|
1685
1673
|
if (db->rep->GetProperty(column_family->rep, Slice(propname), &tmp)) {
|
|
1686
1674
|
// We use strdup() since we expect human readable output.
|
|
@@ -1726,23 +1714,19 @@ void rocksdb_approximate_sizes_cf(
|
|
|
1726
1714
|
delete[] ranges;
|
|
1727
1715
|
}
|
|
1728
1716
|
|
|
1729
|
-
void rocksdb_delete_file(
|
|
1730
|
-
rocksdb_t* db,
|
|
1731
|
-
const char* name) {
|
|
1717
|
+
void rocksdb_delete_file(rocksdb_t* db, const char* name) {
|
|
1732
1718
|
db->rep->DeleteFile(name);
|
|
1733
1719
|
}
|
|
1734
1720
|
|
|
1735
|
-
const rocksdb_livefiles_t* rocksdb_livefiles(
|
|
1736
|
-
rocksdb_t* db) {
|
|
1721
|
+
const rocksdb_livefiles_t* rocksdb_livefiles(rocksdb_t* db) {
|
|
1737
1722
|
rocksdb_livefiles_t* result = new rocksdb_livefiles_t;
|
|
1738
1723
|
db->rep->GetLiveFilesMetaData(&result->rep);
|
|
1739
1724
|
return result;
|
|
1740
1725
|
}
|
|
1741
1726
|
|
|
1742
|
-
void rocksdb_compact_range(
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
const char* limit_key, size_t limit_key_len) {
|
|
1727
|
+
void rocksdb_compact_range(rocksdb_t* db, const char* start_key,
|
|
1728
|
+
size_t start_key_len, const char* limit_key,
|
|
1729
|
+
size_t limit_key_len) {
|
|
1746
1730
|
Slice a, b;
|
|
1747
1731
|
db->rep->CompactRange(
|
|
1748
1732
|
CompactRangeOptions(),
|
|
@@ -1751,11 +1735,10 @@ void rocksdb_compact_range(
|
|
|
1751
1735
|
(limit_key ? (b = Slice(limit_key, limit_key_len), &b) : nullptr));
|
|
1752
1736
|
}
|
|
1753
1737
|
|
|
1754
|
-
void rocksdb_compact_range_cf(
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
const char* limit_key, size_t limit_key_len) {
|
|
1738
|
+
void rocksdb_compact_range_cf(rocksdb_t* db,
|
|
1739
|
+
rocksdb_column_family_handle_t* column_family,
|
|
1740
|
+
const char* start_key, size_t start_key_len,
|
|
1741
|
+
const char* limit_key, size_t limit_key_len) {
|
|
1759
1742
|
Slice a, b;
|
|
1760
1743
|
db->rep->CompactRange(
|
|
1761
1744
|
CompactRangeOptions(), column_family->rep,
|
|
@@ -1811,18 +1794,14 @@ void rocksdb_compact_range_cf_opt(rocksdb_t* db,
|
|
|
1811
1794
|
(limit_key ? (b = Slice(limit_key, limit_key_len), &b) : nullptr));
|
|
1812
1795
|
}
|
|
1813
1796
|
|
|
1814
|
-
void rocksdb_flush(
|
|
1815
|
-
|
|
1816
|
-
const rocksdb_flushoptions_t* options,
|
|
1817
|
-
char** errptr) {
|
|
1797
|
+
void rocksdb_flush(rocksdb_t* db, const rocksdb_flushoptions_t* options,
|
|
1798
|
+
char** errptr) {
|
|
1818
1799
|
SaveError(errptr, db->rep->Flush(options->rep));
|
|
1819
1800
|
}
|
|
1820
1801
|
|
|
1821
|
-
void rocksdb_flush_cf(
|
|
1822
|
-
|
|
1823
|
-
|
|
1824
|
-
rocksdb_column_family_handle_t* column_family,
|
|
1825
|
-
char** errptr) {
|
|
1802
|
+
void rocksdb_flush_cf(rocksdb_t* db, const rocksdb_flushoptions_t* options,
|
|
1803
|
+
rocksdb_column_family_handle_t* column_family,
|
|
1804
|
+
char** errptr) {
|
|
1826
1805
|
SaveError(errptr, db->rep->Flush(options->rep, column_family->rep));
|
|
1827
1806
|
}
|
|
1828
1807
|
|
|
@@ -1830,30 +1809,22 @@ void rocksdb_flush_wal(rocksdb_t* db, unsigned char sync, char** errptr) {
|
|
|
1830
1809
|
SaveError(errptr, db->rep->FlushWAL(sync));
|
|
1831
1810
|
}
|
|
1832
1811
|
|
|
1833
|
-
void rocksdb_disable_file_deletions(
|
|
1834
|
-
rocksdb_t* db,
|
|
1835
|
-
char** errptr) {
|
|
1812
|
+
void rocksdb_disable_file_deletions(rocksdb_t* db, char** errptr) {
|
|
1836
1813
|
SaveError(errptr, db->rep->DisableFileDeletions());
|
|
1837
1814
|
}
|
|
1838
1815
|
|
|
1839
|
-
void rocksdb_enable_file_deletions(
|
|
1840
|
-
|
|
1841
|
-
unsigned char force,
|
|
1842
|
-
char** errptr) {
|
|
1816
|
+
void rocksdb_enable_file_deletions(rocksdb_t* db, unsigned char force,
|
|
1817
|
+
char** errptr) {
|
|
1843
1818
|
SaveError(errptr, db->rep->EnableFileDeletions(force));
|
|
1844
1819
|
}
|
|
1845
1820
|
|
|
1846
|
-
void rocksdb_destroy_db(
|
|
1847
|
-
|
|
1848
|
-
const char* name,
|
|
1849
|
-
char** errptr) {
|
|
1821
|
+
void rocksdb_destroy_db(const rocksdb_options_t* options, const char* name,
|
|
1822
|
+
char** errptr) {
|
|
1850
1823
|
SaveError(errptr, DestroyDB(name, options->rep));
|
|
1851
1824
|
}
|
|
1852
1825
|
|
|
1853
|
-
void rocksdb_repair_db(
|
|
1854
|
-
|
|
1855
|
-
const char* name,
|
|
1856
|
-
char** errptr) {
|
|
1826
|
+
void rocksdb_repair_db(const rocksdb_options_t* options, const char* name,
|
|
1827
|
+
char** errptr) {
|
|
1857
1828
|
SaveError(errptr, RepairDB(name, options->rep));
|
|
1858
1829
|
}
|
|
1859
1830
|
|
|
@@ -1883,13 +1854,9 @@ void rocksdb_iter_seek_for_prev(rocksdb_iterator_t* iter, const char* k,
|
|
|
1883
1854
|
iter->rep->SeekForPrev(Slice(k, klen));
|
|
1884
1855
|
}
|
|
1885
1856
|
|
|
1886
|
-
void rocksdb_iter_next(rocksdb_iterator_t* iter) {
|
|
1887
|
-
iter->rep->Next();
|
|
1888
|
-
}
|
|
1857
|
+
void rocksdb_iter_next(rocksdb_iterator_t* iter) { iter->rep->Next(); }
|
|
1889
1858
|
|
|
1890
|
-
void rocksdb_iter_prev(rocksdb_iterator_t* iter) {
|
|
1891
|
-
iter->rep->Prev();
|
|
1892
|
-
}
|
|
1859
|
+
void rocksdb_iter_prev(rocksdb_iterator_t* iter) { iter->rep->Prev(); }
|
|
1893
1860
|
|
|
1894
1861
|
const char* rocksdb_iter_key(const rocksdb_iterator_t* iter, size_t* klen) {
|
|
1895
1862
|
Slice s = iter->rep->key();
|
|
@@ -1991,20 +1958,18 @@ void rocksdb_writebatch_merge(rocksdb_writebatch_t* b, const char* key,
|
|
|
1991
1958
|
b->rep.Merge(Slice(key, klen), Slice(val, vlen));
|
|
1992
1959
|
}
|
|
1993
1960
|
|
|
1994
|
-
void rocksdb_writebatch_merge_cf(
|
|
1995
|
-
|
|
1996
|
-
|
|
1997
|
-
|
|
1998
|
-
const char* val, size_t vlen) {
|
|
1961
|
+
void rocksdb_writebatch_merge_cf(rocksdb_writebatch_t* b,
|
|
1962
|
+
rocksdb_column_family_handle_t* column_family,
|
|
1963
|
+
const char* key, size_t klen, const char* val,
|
|
1964
|
+
size_t vlen) {
|
|
1999
1965
|
b->rep.Merge(column_family->rep, Slice(key, klen), Slice(val, vlen));
|
|
2000
1966
|
}
|
|
2001
1967
|
|
|
2002
|
-
void rocksdb_writebatch_mergev(
|
|
2003
|
-
|
|
2004
|
-
|
|
2005
|
-
|
|
2006
|
-
|
|
2007
|
-
const size_t* values_list_sizes) {
|
|
1968
|
+
void rocksdb_writebatch_mergev(rocksdb_writebatch_t* b, int num_keys,
|
|
1969
|
+
const char* const* keys_list,
|
|
1970
|
+
const size_t* keys_list_sizes, int num_values,
|
|
1971
|
+
const char* const* values_list,
|
|
1972
|
+
const size_t* values_list_sizes) {
|
|
2008
1973
|
std::vector<Slice> key_slices(num_keys);
|
|
2009
1974
|
for (int i = 0; i < num_keys; i++) {
|
|
2010
1975
|
key_slices[i] = Slice(keys_list[i], keys_list_sizes[i]);
|
|
@@ -2017,13 +1982,12 @@ void rocksdb_writebatch_mergev(
|
|
|
2017
1982
|
SliceParts(value_slices.data(), num_values));
|
|
2018
1983
|
}
|
|
2019
1984
|
|
|
2020
|
-
void rocksdb_writebatch_mergev_cf(
|
|
2021
|
-
|
|
2022
|
-
|
|
2023
|
-
|
|
2024
|
-
|
|
2025
|
-
|
|
2026
|
-
const size_t* values_list_sizes) {
|
|
1985
|
+
void rocksdb_writebatch_mergev_cf(rocksdb_writebatch_t* b,
|
|
1986
|
+
rocksdb_column_family_handle_t* column_family,
|
|
1987
|
+
int num_keys, const char* const* keys_list,
|
|
1988
|
+
const size_t* keys_list_sizes, int num_values,
|
|
1989
|
+
const char* const* values_list,
|
|
1990
|
+
const size_t* values_list_sizes) {
|
|
2027
1991
|
std::vector<Slice> key_slices(num_keys);
|
|
2028
1992
|
for (int i = 0; i < num_keys; i++) {
|
|
2029
1993
|
key_slices[i] = Slice(keys_list[i], keys_list_sizes[i]);
|
|
@@ -2036,9 +2000,8 @@ void rocksdb_writebatch_mergev_cf(
|
|
|
2036
2000
|
SliceParts(value_slices.data(), num_values));
|
|
2037
2001
|
}
|
|
2038
2002
|
|
|
2039
|
-
void rocksdb_writebatch_delete(
|
|
2040
|
-
|
|
2041
|
-
const char* key, size_t klen) {
|
|
2003
|
+
void rocksdb_writebatch_delete(rocksdb_writebatch_t* b, const char* key,
|
|
2004
|
+
size_t klen) {
|
|
2042
2005
|
b->rep.Delete(Slice(key, klen));
|
|
2043
2006
|
}
|
|
2044
2007
|
|
|
@@ -2047,10 +2010,9 @@ void rocksdb_writebatch_singledelete(rocksdb_writebatch_t* b, const char* key,
|
|
|
2047
2010
|
b->rep.SingleDelete(Slice(key, klen));
|
|
2048
2011
|
}
|
|
2049
2012
|
|
|
2050
|
-
void rocksdb_writebatch_delete_cf(
|
|
2051
|
-
|
|
2052
|
-
|
|
2053
|
-
const char* key, size_t klen) {
|
|
2013
|
+
void rocksdb_writebatch_delete_cf(rocksdb_writebatch_t* b,
|
|
2014
|
+
rocksdb_column_family_handle_t* column_family,
|
|
2015
|
+
const char* key, size_t klen) {
|
|
2054
2016
|
b->rep.Delete(column_family->rep, Slice(key, klen));
|
|
2055
2017
|
}
|
|
2056
2018
|
|
|
@@ -2139,9 +2101,8 @@ void rocksdb_writebatch_delete_rangev_cf(
|
|
|
2139
2101
|
SliceParts(end_key_slices.data(), num_keys));
|
|
2140
2102
|
}
|
|
2141
2103
|
|
|
2142
|
-
void rocksdb_writebatch_put_log_data(
|
|
2143
|
-
|
|
2144
|
-
const char* blob, size_t len) {
|
|
2104
|
+
void rocksdb_writebatch_put_log_data(rocksdb_writebatch_t* b, const char* blob,
|
|
2105
|
+
size_t len) {
|
|
2145
2106
|
b->rep.PutLogData(Slice(blob, len));
|
|
2146
2107
|
}
|
|
2147
2108
|
|
|
@@ -2158,11 +2119,11 @@ class H : public WriteBatch::Handler {
|
|
|
2158
2119
|
}
|
|
2159
2120
|
};
|
|
2160
2121
|
|
|
2161
|
-
void rocksdb_writebatch_iterate(
|
|
2162
|
-
|
|
2163
|
-
|
|
2164
|
-
|
|
2165
|
-
|
|
2122
|
+
void rocksdb_writebatch_iterate(rocksdb_writebatch_t* b, void* state,
|
|
2123
|
+
void (*put)(void*, const char* k, size_t klen,
|
|
2124
|
+
const char* v, size_t vlen),
|
|
2125
|
+
void (*deleted)(void*, const char* k,
|
|
2126
|
+
size_t klen)) {
|
|
2166
2127
|
H handler;
|
|
2167
2128
|
handler.state_ = state;
|
|
2168
2129
|
handler.put_ = put;
|
|
@@ -2188,9 +2149,11 @@ void rocksdb_writebatch_pop_save_point(rocksdb_writebatch_t* b, char** errptr) {
|
|
|
2188
2149
|
SaveError(errptr, b->rep.PopSavePoint());
|
|
2189
2150
|
}
|
|
2190
2151
|
|
|
2191
|
-
rocksdb_writebatch_wi_t* rocksdb_writebatch_wi_create(
|
|
2152
|
+
rocksdb_writebatch_wi_t* rocksdb_writebatch_wi_create(
|
|
2153
|
+
size_t reserved_bytes, unsigned char overwrite_key) {
|
|
2192
2154
|
rocksdb_writebatch_wi_t* b = new rocksdb_writebatch_wi_t;
|
|
2193
|
-
b->rep = new WriteBatchWithIndex(BytewiseComparator(), reserved_bytes,
|
|
2155
|
+
b->rep = new WriteBatchWithIndex(BytewiseComparator(), reserved_bytes,
|
|
2156
|
+
overwrite_key);
|
|
2194
2157
|
return b;
|
|
2195
2158
|
}
|
|
2196
2159
|
|
|
@@ -2209,27 +2172,23 @@ int rocksdb_writebatch_wi_count(rocksdb_writebatch_wi_t* b) {
|
|
|
2209
2172
|
return b->rep->GetWriteBatch()->Count();
|
|
2210
2173
|
}
|
|
2211
2174
|
|
|
2212
|
-
void rocksdb_writebatch_wi_put(
|
|
2213
|
-
|
|
2214
|
-
const char* key, size_t klen,
|
|
2215
|
-
const char* val, size_t vlen) {
|
|
2175
|
+
void rocksdb_writebatch_wi_put(rocksdb_writebatch_wi_t* b, const char* key,
|
|
2176
|
+
size_t klen, const char* val, size_t vlen) {
|
|
2216
2177
|
b->rep->Put(Slice(key, klen), Slice(val, vlen));
|
|
2217
2178
|
}
|
|
2218
2179
|
|
|
2219
|
-
void rocksdb_writebatch_wi_put_cf(
|
|
2220
|
-
|
|
2221
|
-
|
|
2222
|
-
|
|
2223
|
-
const char* val, size_t vlen) {
|
|
2180
|
+
void rocksdb_writebatch_wi_put_cf(rocksdb_writebatch_wi_t* b,
|
|
2181
|
+
rocksdb_column_family_handle_t* column_family,
|
|
2182
|
+
const char* key, size_t klen, const char* val,
|
|
2183
|
+
size_t vlen) {
|
|
2224
2184
|
b->rep->Put(column_family->rep, Slice(key, klen), Slice(val, vlen));
|
|
2225
2185
|
}
|
|
2226
2186
|
|
|
2227
|
-
void rocksdb_writebatch_wi_putv(
|
|
2228
|
-
|
|
2229
|
-
|
|
2230
|
-
|
|
2231
|
-
|
|
2232
|
-
const size_t* values_list_sizes) {
|
|
2187
|
+
void rocksdb_writebatch_wi_putv(rocksdb_writebatch_wi_t* b, int num_keys,
|
|
2188
|
+
const char* const* keys_list,
|
|
2189
|
+
const size_t* keys_list_sizes, int num_values,
|
|
2190
|
+
const char* const* values_list,
|
|
2191
|
+
const size_t* values_list_sizes) {
|
|
2233
2192
|
std::vector<Slice> key_slices(num_keys);
|
|
2234
2193
|
for (int i = 0; i < num_keys; i++) {
|
|
2235
2194
|
key_slices[i] = Slice(keys_list[i], keys_list_sizes[i]);
|
|
@@ -2239,14 +2198,12 @@ void rocksdb_writebatch_wi_putv(
|
|
|
2239
2198
|
value_slices[i] = Slice(values_list[i], values_list_sizes[i]);
|
|
2240
2199
|
}
|
|
2241
2200
|
b->rep->Put(SliceParts(key_slices.data(), num_keys),
|
|
2242
|
-
|
|
2201
|
+
SliceParts(value_slices.data(), num_values));
|
|
2243
2202
|
}
|
|
2244
2203
|
|
|
2245
2204
|
void rocksdb_writebatch_wi_putv_cf(
|
|
2246
|
-
rocksdb_writebatch_wi_t* b,
|
|
2247
|
-
|
|
2248
|
-
int num_keys, const char* const* keys_list,
|
|
2249
|
-
const size_t* keys_list_sizes,
|
|
2205
|
+
rocksdb_writebatch_wi_t* b, rocksdb_column_family_handle_t* column_family,
|
|
2206
|
+
int num_keys, const char* const* keys_list, const size_t* keys_list_sizes,
|
|
2250
2207
|
int num_values, const char* const* values_list,
|
|
2251
2208
|
const size_t* values_list_sizes) {
|
|
2252
2209
|
std::vector<Slice> key_slices(num_keys);
|
|
@@ -2258,30 +2215,25 @@ void rocksdb_writebatch_wi_putv_cf(
|
|
|
2258
2215
|
value_slices[i] = Slice(values_list[i], values_list_sizes[i]);
|
|
2259
2216
|
}
|
|
2260
2217
|
b->rep->Put(column_family->rep, SliceParts(key_slices.data(), num_keys),
|
|
2261
|
-
|
|
2218
|
+
SliceParts(value_slices.data(), num_values));
|
|
2262
2219
|
}
|
|
2263
2220
|
|
|
2264
|
-
void rocksdb_writebatch_wi_merge(
|
|
2265
|
-
|
|
2266
|
-
const char* key, size_t klen,
|
|
2267
|
-
const char* val, size_t vlen) {
|
|
2221
|
+
void rocksdb_writebatch_wi_merge(rocksdb_writebatch_wi_t* b, const char* key,
|
|
2222
|
+
size_t klen, const char* val, size_t vlen) {
|
|
2268
2223
|
b->rep->Merge(Slice(key, klen), Slice(val, vlen));
|
|
2269
2224
|
}
|
|
2270
2225
|
|
|
2271
2226
|
void rocksdb_writebatch_wi_merge_cf(
|
|
2272
|
-
rocksdb_writebatch_wi_t* b,
|
|
2273
|
-
|
|
2274
|
-
const char* key, size_t klen,
|
|
2275
|
-
const char* val, size_t vlen) {
|
|
2227
|
+
rocksdb_writebatch_wi_t* b, rocksdb_column_family_handle_t* column_family,
|
|
2228
|
+
const char* key, size_t klen, const char* val, size_t vlen) {
|
|
2276
2229
|
b->rep->Merge(column_family->rep, Slice(key, klen), Slice(val, vlen));
|
|
2277
2230
|
}
|
|
2278
2231
|
|
|
2279
|
-
void rocksdb_writebatch_wi_mergev(
|
|
2280
|
-
|
|
2281
|
-
|
|
2282
|
-
|
|
2283
|
-
|
|
2284
|
-
const size_t* values_list_sizes) {
|
|
2232
|
+
void rocksdb_writebatch_wi_mergev(rocksdb_writebatch_wi_t* b, int num_keys,
|
|
2233
|
+
const char* const* keys_list,
|
|
2234
|
+
const size_t* keys_list_sizes, int num_values,
|
|
2235
|
+
const char* const* values_list,
|
|
2236
|
+
const size_t* values_list_sizes) {
|
|
2285
2237
|
std::vector<Slice> key_slices(num_keys);
|
|
2286
2238
|
for (int i = 0; i < num_keys; i++) {
|
|
2287
2239
|
key_slices[i] = Slice(keys_list[i], keys_list_sizes[i]);
|
|
@@ -2291,14 +2243,12 @@ void rocksdb_writebatch_wi_mergev(
|
|
|
2291
2243
|
value_slices[i] = Slice(values_list[i], values_list_sizes[i]);
|
|
2292
2244
|
}
|
|
2293
2245
|
b->rep->Merge(SliceParts(key_slices.data(), num_keys),
|
|
2294
|
-
|
|
2246
|
+
SliceParts(value_slices.data(), num_values));
|
|
2295
2247
|
}
|
|
2296
2248
|
|
|
2297
2249
|
void rocksdb_writebatch_wi_mergev_cf(
|
|
2298
|
-
rocksdb_writebatch_wi_t* b,
|
|
2299
|
-
|
|
2300
|
-
int num_keys, const char* const* keys_list,
|
|
2301
|
-
const size_t* keys_list_sizes,
|
|
2250
|
+
rocksdb_writebatch_wi_t* b, rocksdb_column_family_handle_t* column_family,
|
|
2251
|
+
int num_keys, const char* const* keys_list, const size_t* keys_list_sizes,
|
|
2302
2252
|
int num_values, const char* const* values_list,
|
|
2303
2253
|
const size_t* values_list_sizes) {
|
|
2304
2254
|
std::vector<Slice> key_slices(num_keys);
|
|
@@ -2310,12 +2260,11 @@ void rocksdb_writebatch_wi_mergev_cf(
|
|
|
2310
2260
|
value_slices[i] = Slice(values_list[i], values_list_sizes[i]);
|
|
2311
2261
|
}
|
|
2312
2262
|
b->rep->Merge(column_family->rep, SliceParts(key_slices.data(), num_keys),
|
|
2313
|
-
|
|
2263
|
+
SliceParts(value_slices.data(), num_values));
|
|
2314
2264
|
}
|
|
2315
2265
|
|
|
2316
|
-
void rocksdb_writebatch_wi_delete(
|
|
2317
|
-
|
|
2318
|
-
const char* key, size_t klen) {
|
|
2266
|
+
void rocksdb_writebatch_wi_delete(rocksdb_writebatch_wi_t* b, const char* key,
|
|
2267
|
+
size_t klen) {
|
|
2319
2268
|
b->rep->Delete(Slice(key, klen));
|
|
2320
2269
|
}
|
|
2321
2270
|
|
|
@@ -2325,8 +2274,7 @@ void rocksdb_writebatch_wi_singledelete(rocksdb_writebatch_wi_t* b,
|
|
|
2325
2274
|
}
|
|
2326
2275
|
|
|
2327
2276
|
void rocksdb_writebatch_wi_delete_cf(
|
|
2328
|
-
rocksdb_writebatch_wi_t* b,
|
|
2329
|
-
rocksdb_column_family_handle_t* column_family,
|
|
2277
|
+
rocksdb_writebatch_wi_t* b, rocksdb_column_family_handle_t* column_family,
|
|
2330
2278
|
const char* key, size_t klen) {
|
|
2331
2279
|
b->rep->Delete(column_family->rep, Slice(key, klen));
|
|
2332
2280
|
}
|
|
@@ -2337,10 +2285,9 @@ void rocksdb_writebatch_wi_singledelete_cf(
|
|
|
2337
2285
|
b->rep->SingleDelete(column_family->rep, Slice(key, klen));
|
|
2338
2286
|
}
|
|
2339
2287
|
|
|
2340
|
-
void rocksdb_writebatch_wi_deletev(
|
|
2341
|
-
|
|
2342
|
-
|
|
2343
|
-
const size_t* keys_list_sizes) {
|
|
2288
|
+
void rocksdb_writebatch_wi_deletev(rocksdb_writebatch_wi_t* b, int num_keys,
|
|
2289
|
+
const char* const* keys_list,
|
|
2290
|
+
const size_t* keys_list_sizes) {
|
|
2344
2291
|
std::vector<Slice> key_slices(num_keys);
|
|
2345
2292
|
for (int i = 0; i < num_keys; i++) {
|
|
2346
2293
|
key_slices[i] = Slice(keys_list[i], keys_list_sizes[i]);
|
|
@@ -2349,10 +2296,8 @@ void rocksdb_writebatch_wi_deletev(
|
|
|
2349
2296
|
}
|
|
2350
2297
|
|
|
2351
2298
|
void rocksdb_writebatch_wi_deletev_cf(
|
|
2352
|
-
rocksdb_writebatch_wi_t* b,
|
|
2353
|
-
|
|
2354
|
-
int num_keys, const char* const* keys_list,
|
|
2355
|
-
const size_t* keys_list_sizes) {
|
|
2299
|
+
rocksdb_writebatch_wi_t* b, rocksdb_column_family_handle_t* column_family,
|
|
2300
|
+
int num_keys, const char* const* keys_list, const size_t* keys_list_sizes) {
|
|
2356
2301
|
std::vector<Slice> key_slices(num_keys);
|
|
2357
2302
|
for (int i = 0; i < num_keys; i++) {
|
|
2358
2303
|
key_slices[i] = Slice(keys_list[i], keys_list_sizes[i]);
|
|
@@ -2361,11 +2306,12 @@ void rocksdb_writebatch_wi_deletev_cf(
|
|
|
2361
2306
|
}
|
|
2362
2307
|
|
|
2363
2308
|
void rocksdb_writebatch_wi_delete_range(rocksdb_writebatch_wi_t* b,
|
|
2364
|
-
|
|
2365
|
-
|
|
2366
|
-
|
|
2309
|
+
const char* start_key,
|
|
2310
|
+
size_t start_key_len,
|
|
2311
|
+
const char* end_key,
|
|
2312
|
+
size_t end_key_len) {
|
|
2367
2313
|
b->rep->DeleteRange(Slice(start_key, start_key_len),
|
|
2368
|
-
|
|
2314
|
+
Slice(end_key, end_key_len));
|
|
2369
2315
|
}
|
|
2370
2316
|
|
|
2371
2317
|
void rocksdb_writebatch_wi_delete_range_cf(
|
|
@@ -2373,14 +2319,15 @@ void rocksdb_writebatch_wi_delete_range_cf(
|
|
|
2373
2319
|
const char* start_key, size_t start_key_len, const char* end_key,
|
|
2374
2320
|
size_t end_key_len) {
|
|
2375
2321
|
b->rep->DeleteRange(column_family->rep, Slice(start_key, start_key_len),
|
|
2376
|
-
|
|
2322
|
+
Slice(end_key, end_key_len));
|
|
2377
2323
|
}
|
|
2378
2324
|
|
|
2379
|
-
void rocksdb_writebatch_wi_delete_rangev(rocksdb_writebatch_wi_t* b,
|
|
2380
|
-
|
|
2381
|
-
|
|
2382
|
-
|
|
2383
|
-
|
|
2325
|
+
void rocksdb_writebatch_wi_delete_rangev(rocksdb_writebatch_wi_t* b,
|
|
2326
|
+
int num_keys,
|
|
2327
|
+
const char* const* start_keys_list,
|
|
2328
|
+
const size_t* start_keys_list_sizes,
|
|
2329
|
+
const char* const* end_keys_list,
|
|
2330
|
+
const size_t* end_keys_list_sizes) {
|
|
2384
2331
|
std::vector<Slice> start_key_slices(num_keys);
|
|
2385
2332
|
std::vector<Slice> end_key_slices(num_keys);
|
|
2386
2333
|
for (int i = 0; i < num_keys; i++) {
|
|
@@ -2388,7 +2335,7 @@ void rocksdb_writebatch_wi_delete_rangev(rocksdb_writebatch_wi_t* b, int num_key
|
|
|
2388
2335
|
end_key_slices[i] = Slice(end_keys_list[i], end_keys_list_sizes[i]);
|
|
2389
2336
|
}
|
|
2390
2337
|
b->rep->DeleteRange(SliceParts(start_key_slices.data(), num_keys),
|
|
2391
|
-
|
|
2338
|
+
SliceParts(end_key_slices.data(), num_keys));
|
|
2392
2339
|
}
|
|
2393
2340
|
|
|
2394
2341
|
void rocksdb_writebatch_wi_delete_rangev_cf(
|
|
@@ -2403,19 +2350,17 @@ void rocksdb_writebatch_wi_delete_rangev_cf(
|
|
|
2403
2350
|
end_key_slices[i] = Slice(end_keys_list[i], end_keys_list_sizes[i]);
|
|
2404
2351
|
}
|
|
2405
2352
|
b->rep->DeleteRange(column_family->rep,
|
|
2406
|
-
|
|
2407
|
-
|
|
2353
|
+
SliceParts(start_key_slices.data(), num_keys),
|
|
2354
|
+
SliceParts(end_key_slices.data(), num_keys));
|
|
2408
2355
|
}
|
|
2409
2356
|
|
|
2410
|
-
void rocksdb_writebatch_wi_put_log_data(
|
|
2411
|
-
|
|
2412
|
-
const char* blob, size_t len) {
|
|
2357
|
+
void rocksdb_writebatch_wi_put_log_data(rocksdb_writebatch_wi_t* b,
|
|
2358
|
+
const char* blob, size_t len) {
|
|
2413
2359
|
b->rep->PutLogData(Slice(blob, len));
|
|
2414
2360
|
}
|
|
2415
2361
|
|
|
2416
2362
|
void rocksdb_writebatch_wi_iterate(
|
|
2417
|
-
rocksdb_writebatch_wi_t* b,
|
|
2418
|
-
void* state,
|
|
2363
|
+
rocksdb_writebatch_wi_t* b, void* state,
|
|
2419
2364
|
void (*put)(void*, const char* k, size_t klen, const char* v, size_t vlen),
|
|
2420
2365
|
void (*deleted)(void*, const char* k, size_t klen)) {
|
|
2421
2366
|
H handler;
|
|
@@ -2425,7 +2370,8 @@ void rocksdb_writebatch_wi_iterate(
|
|
|
2425
2370
|
b->rep->GetWriteBatch()->Iterate(&handler);
|
|
2426
2371
|
}
|
|
2427
2372
|
|
|
2428
|
-
const char* rocksdb_writebatch_wi_data(rocksdb_writebatch_wi_t* b,
|
|
2373
|
+
const char* rocksdb_writebatch_wi_data(rocksdb_writebatch_wi_t* b,
|
|
2374
|
+
size_t* size) {
|
|
2429
2375
|
WriteBatch* wb = b->rep->GetWriteBatch();
|
|
2430
2376
|
*size = wb->GetDataSize();
|
|
2431
2377
|
return wb->Data().c_str();
|
|
@@ -2436,13 +2382,12 @@ void rocksdb_writebatch_wi_set_save_point(rocksdb_writebatch_wi_t* b) {
|
|
|
2436
2382
|
}
|
|
2437
2383
|
|
|
2438
2384
|
void rocksdb_writebatch_wi_rollback_to_save_point(rocksdb_writebatch_wi_t* b,
|
|
2439
|
-
|
|
2385
|
+
char** errptr) {
|
|
2440
2386
|
SaveError(errptr, b->rep->RollbackToSavePoint());
|
|
2441
2387
|
}
|
|
2442
2388
|
|
|
2443
2389
|
rocksdb_iterator_t* rocksdb_writebatch_wi_create_iterator_with_base(
|
|
2444
|
-
rocksdb_writebatch_wi_t* wbwi,
|
|
2445
|
-
rocksdb_iterator_t* base_iterator) {
|
|
2390
|
+
rocksdb_writebatch_wi_t* wbwi, rocksdb_iterator_t* base_iterator) {
|
|
2446
2391
|
rocksdb_iterator_t* result = new rocksdb_iterator_t;
|
|
2447
2392
|
result->rep = wbwi->rep->NewIteratorWithBase(base_iterator->rep);
|
|
2448
2393
|
delete base_iterator;
|
|
@@ -2459,12 +2404,10 @@ rocksdb_iterator_t* rocksdb_writebatch_wi_create_iterator_with_base_cf(
|
|
|
2459
2404
|
return result;
|
|
2460
2405
|
}
|
|
2461
2406
|
|
|
2462
|
-
char* rocksdb_writebatch_wi_get_from_batch(
|
|
2463
|
-
|
|
2464
|
-
|
|
2465
|
-
|
|
2466
|
-
size_t* vallen,
|
|
2467
|
-
char** errptr) {
|
|
2407
|
+
char* rocksdb_writebatch_wi_get_from_batch(rocksdb_writebatch_wi_t* wbwi,
|
|
2408
|
+
const rocksdb_options_t* options,
|
|
2409
|
+
const char* key, size_t keylen,
|
|
2410
|
+
size_t* vallen, char** errptr) {
|
|
2468
2411
|
char* result = nullptr;
|
|
2469
2412
|
std::string tmp;
|
|
2470
2413
|
Status s = wbwi->rep->GetFromBatch(options->rep, Slice(key, keylen), &tmp);
|
|
@@ -2481,16 +2424,13 @@ char* rocksdb_writebatch_wi_get_from_batch(
|
|
|
2481
2424
|
}
|
|
2482
2425
|
|
|
2483
2426
|
char* rocksdb_writebatch_wi_get_from_batch_cf(
|
|
2484
|
-
rocksdb_writebatch_wi_t* wbwi,
|
|
2485
|
-
const
|
|
2486
|
-
|
|
2487
|
-
const char* key, size_t keylen,
|
|
2488
|
-
size_t* vallen,
|
|
2489
|
-
char** errptr) {
|
|
2427
|
+
rocksdb_writebatch_wi_t* wbwi, const rocksdb_options_t* options,
|
|
2428
|
+
rocksdb_column_family_handle_t* column_family, const char* key,
|
|
2429
|
+
size_t keylen, size_t* vallen, char** errptr) {
|
|
2490
2430
|
char* result = nullptr;
|
|
2491
2431
|
std::string tmp;
|
|
2492
2432
|
Status s = wbwi->rep->GetFromBatch(column_family->rep, options->rep,
|
|
2493
|
-
|
|
2433
|
+
Slice(key, keylen), &tmp);
|
|
2494
2434
|
if (s.ok()) {
|
|
2495
2435
|
*vallen = tmp.size();
|
|
2496
2436
|
result = CopyString(tmp);
|
|
@@ -2504,15 +2444,13 @@ char* rocksdb_writebatch_wi_get_from_batch_cf(
|
|
|
2504
2444
|
}
|
|
2505
2445
|
|
|
2506
2446
|
char* rocksdb_writebatch_wi_get_from_batch_and_db(
|
|
2507
|
-
rocksdb_writebatch_wi_t* wbwi,
|
|
2508
|
-
|
|
2509
|
-
|
|
2510
|
-
const char* key, size_t keylen,
|
|
2511
|
-
size_t* vallen,
|
|
2512
|
-
char** errptr) {
|
|
2447
|
+
rocksdb_writebatch_wi_t* wbwi, rocksdb_t* db,
|
|
2448
|
+
const rocksdb_readoptions_t* options, const char* key, size_t keylen,
|
|
2449
|
+
size_t* vallen, char** errptr) {
|
|
2513
2450
|
char* result = nullptr;
|
|
2514
2451
|
std::string tmp;
|
|
2515
|
-
Status s = wbwi->rep->GetFromBatchAndDB(db->rep, options->rep,
|
|
2452
|
+
Status s = wbwi->rep->GetFromBatchAndDB(db->rep, options->rep,
|
|
2453
|
+
Slice(key, keylen), &tmp);
|
|
2516
2454
|
if (s.ok()) {
|
|
2517
2455
|
*vallen = tmp.size();
|
|
2518
2456
|
result = CopyString(tmp);
|
|
@@ -2526,17 +2464,14 @@ char* rocksdb_writebatch_wi_get_from_batch_and_db(
|
|
|
2526
2464
|
}
|
|
2527
2465
|
|
|
2528
2466
|
char* rocksdb_writebatch_wi_get_from_batch_and_db_cf(
|
|
2529
|
-
rocksdb_writebatch_wi_t* wbwi,
|
|
2530
|
-
rocksdb_t* db,
|
|
2467
|
+
rocksdb_writebatch_wi_t* wbwi, rocksdb_t* db,
|
|
2531
2468
|
const rocksdb_readoptions_t* options,
|
|
2532
|
-
rocksdb_column_family_handle_t* column_family,
|
|
2533
|
-
|
|
2534
|
-
size_t* vallen,
|
|
2535
|
-
char** errptr) {
|
|
2469
|
+
rocksdb_column_family_handle_t* column_family, const char* key,
|
|
2470
|
+
size_t keylen, size_t* vallen, char** errptr) {
|
|
2536
2471
|
char* result = nullptr;
|
|
2537
2472
|
std::string tmp;
|
|
2538
|
-
Status s = wbwi->rep->GetFromBatchAndDB(
|
|
2539
|
-
Slice(key, keylen), &tmp);
|
|
2473
|
+
Status s = wbwi->rep->GetFromBatchAndDB(
|
|
2474
|
+
db->rep, options->rep, column_family->rep, Slice(key, keylen), &tmp);
|
|
2540
2475
|
if (s.ok()) {
|
|
2541
2476
|
*vallen = tmp.size();
|
|
2542
2477
|
result = CopyString(tmp);
|
|
@@ -2549,11 +2484,9 @@ char* rocksdb_writebatch_wi_get_from_batch_and_db_cf(
|
|
|
2549
2484
|
return result;
|
|
2550
2485
|
}
|
|
2551
2486
|
|
|
2552
|
-
void rocksdb_write_writebatch_wi(
|
|
2553
|
-
|
|
2554
|
-
|
|
2555
|
-
rocksdb_writebatch_wi_t* wbwi,
|
|
2556
|
-
char** errptr) {
|
|
2487
|
+
void rocksdb_write_writebatch_wi(rocksdb_t* db,
|
|
2488
|
+
const rocksdb_writeoptions_t* options,
|
|
2489
|
+
rocksdb_writebatch_wi_t* wbwi, char** errptr) {
|
|
2557
2490
|
WriteBatch* wb = wbwi->rep->GetWriteBatch();
|
|
2558
2491
|
SaveError(errptr, db->rep->Write(options->rep, wb));
|
|
2559
2492
|
}
|
|
@@ -2608,8 +2541,7 @@ void rocksdb_load_latest_options_destroy(
|
|
|
2608
2541
|
}
|
|
2609
2542
|
}
|
|
2610
2543
|
|
|
2611
|
-
rocksdb_block_based_table_options_t*
|
|
2612
|
-
rocksdb_block_based_options_create() {
|
|
2544
|
+
rocksdb_block_based_table_options_t* rocksdb_block_based_options_create() {
|
|
2613
2545
|
return new rocksdb_block_based_table_options_t;
|
|
2614
2546
|
}
|
|
2615
2547
|
|
|
@@ -2639,22 +2571,26 @@ void rocksdb_block_based_options_set_block_restart_interval(
|
|
|
2639
2571
|
}
|
|
2640
2572
|
|
|
2641
2573
|
void rocksdb_block_based_options_set_index_block_restart_interval(
|
|
2642
|
-
rocksdb_block_based_table_options_t* options,
|
|
2574
|
+
rocksdb_block_based_table_options_t* options,
|
|
2575
|
+
int index_block_restart_interval) {
|
|
2643
2576
|
options->rep.index_block_restart_interval = index_block_restart_interval;
|
|
2644
2577
|
}
|
|
2645
2578
|
|
|
2646
2579
|
void rocksdb_block_based_options_set_metadata_block_size(
|
|
2647
|
-
rocksdb_block_based_table_options_t* options,
|
|
2580
|
+
rocksdb_block_based_table_options_t* options,
|
|
2581
|
+
uint64_t metadata_block_size) {
|
|
2648
2582
|
options->rep.metadata_block_size = metadata_block_size;
|
|
2649
2583
|
}
|
|
2650
2584
|
|
|
2651
2585
|
void rocksdb_block_based_options_set_partition_filters(
|
|
2652
|
-
rocksdb_block_based_table_options_t* options,
|
|
2586
|
+
rocksdb_block_based_table_options_t* options,
|
|
2587
|
+
unsigned char partition_filters) {
|
|
2653
2588
|
options->rep.partition_filters = partition_filters;
|
|
2654
2589
|
}
|
|
2655
2590
|
|
|
2656
2591
|
void rocksdb_block_based_options_set_use_delta_encoding(
|
|
2657
|
-
rocksdb_block_based_table_options_t* options,
|
|
2592
|
+
rocksdb_block_based_table_options_t* options,
|
|
2593
|
+
unsigned char use_delta_encoding) {
|
|
2658
2594
|
options->rep.use_delta_encoding = use_delta_encoding;
|
|
2659
2595
|
}
|
|
2660
2596
|
|
|
@@ -2704,7 +2640,7 @@ void rocksdb_block_based_options_set_index_type(
|
|
|
2704
2640
|
void rocksdb_block_based_options_set_data_block_index_type(
|
|
2705
2641
|
rocksdb_block_based_table_options_t* options, int v) {
|
|
2706
2642
|
options->rep.data_block_index_type =
|
|
2707
|
-
|
|
2643
|
+
static_cast<BlockBasedTableOptions::DataBlockIndexType>(v);
|
|
2708
2644
|
}
|
|
2709
2645
|
|
|
2710
2646
|
void rocksdb_block_based_options_set_data_block_hash_ratio(
|
|
@@ -2733,7 +2669,7 @@ void rocksdb_block_based_options_set_pin_top_level_index_and_filter(
|
|
|
2733
2669
|
}
|
|
2734
2670
|
|
|
2735
2671
|
void rocksdb_options_set_block_based_table_factory(
|
|
2736
|
-
rocksdb_options_t
|
|
2672
|
+
rocksdb_options_t* opt,
|
|
2737
2673
|
rocksdb_block_based_table_options_t* table_options) {
|
|
2738
2674
|
if (table_options) {
|
|
2739
2675
|
opt->rep.table_factory.reset(
|
|
@@ -2741,13 +2677,11 @@ void rocksdb_options_set_block_based_table_factory(
|
|
|
2741
2677
|
}
|
|
2742
2678
|
}
|
|
2743
2679
|
|
|
2744
|
-
rocksdb_cuckoo_table_options_t*
|
|
2745
|
-
rocksdb_cuckoo_options_create() {
|
|
2680
|
+
rocksdb_cuckoo_table_options_t* rocksdb_cuckoo_options_create() {
|
|
2746
2681
|
return new rocksdb_cuckoo_table_options_t;
|
|
2747
2682
|
}
|
|
2748
2683
|
|
|
2749
|
-
void rocksdb_cuckoo_options_destroy(
|
|
2750
|
-
rocksdb_cuckoo_table_options_t* options) {
|
|
2684
|
+
void rocksdb_cuckoo_options_destroy(rocksdb_cuckoo_table_options_t* options) {
|
|
2751
2685
|
delete options;
|
|
2752
2686
|
}
|
|
2753
2687
|
|
|
@@ -2777,51 +2711,44 @@ void rocksdb_cuckoo_options_set_use_module_hash(
|
|
|
2777
2711
|
}
|
|
2778
2712
|
|
|
2779
2713
|
void rocksdb_options_set_cuckoo_table_factory(
|
|
2780
|
-
rocksdb_options_t
|
|
2781
|
-
rocksdb_cuckoo_table_options_t* table_options) {
|
|
2714
|
+
rocksdb_options_t* opt, rocksdb_cuckoo_table_options_t* table_options) {
|
|
2782
2715
|
if (table_options) {
|
|
2783
2716
|
opt->rep.table_factory.reset(
|
|
2784
2717
|
ROCKSDB_NAMESPACE::NewCuckooTableFactory(table_options->rep));
|
|
2785
2718
|
}
|
|
2786
2719
|
}
|
|
2787
2720
|
|
|
2788
|
-
void rocksdb_set_options(
|
|
2789
|
-
|
|
2790
|
-
|
|
2791
|
-
|
|
2792
|
-
|
|
2793
|
-
SaveError(errptr,
|
|
2794
|
-
db->rep->SetOptions(options_map));
|
|
2795
|
-
}
|
|
2796
|
-
|
|
2797
|
-
void rocksdb_set_options_cf(
|
|
2798
|
-
rocksdb_t* db, rocksdb_column_family_handle_t* handle, int count, const char* const keys[], const char* const values[], char** errptr) {
|
|
2799
|
-
std::unordered_map<std::string, std::string> options_map;
|
|
2800
|
-
for (int i=0; i<count; i++)
|
|
2801
|
-
options_map[keys[i]] = values[i];
|
|
2802
|
-
SaveError(errptr,
|
|
2803
|
-
db->rep->SetOptions(handle->rep, options_map));
|
|
2804
|
-
}
|
|
2805
|
-
|
|
2806
|
-
rocksdb_options_t* rocksdb_options_create() {
|
|
2807
|
-
return new rocksdb_options_t;
|
|
2721
|
+
void rocksdb_set_options(rocksdb_t* db, int count, const char* const keys[],
|
|
2722
|
+
const char* const values[], char** errptr) {
|
|
2723
|
+
std::unordered_map<std::string, std::string> options_map;
|
|
2724
|
+
for (int i = 0; i < count; i++) options_map[keys[i]] = values[i];
|
|
2725
|
+
SaveError(errptr, db->rep->SetOptions(options_map));
|
|
2808
2726
|
}
|
|
2809
2727
|
|
|
2810
|
-
void
|
|
2811
|
-
|
|
2728
|
+
void rocksdb_set_options_cf(rocksdb_t* db,
|
|
2729
|
+
rocksdb_column_family_handle_t* handle, int count,
|
|
2730
|
+
const char* const keys[],
|
|
2731
|
+
const char* const values[], char** errptr) {
|
|
2732
|
+
std::unordered_map<std::string, std::string> options_map;
|
|
2733
|
+
for (int i = 0; i < count; i++) options_map[keys[i]] = values[i];
|
|
2734
|
+
SaveError(errptr, db->rep->SetOptions(handle->rep, options_map));
|
|
2812
2735
|
}
|
|
2813
2736
|
|
|
2737
|
+
rocksdb_options_t* rocksdb_options_create() { return new rocksdb_options_t; }
|
|
2738
|
+
|
|
2739
|
+
void rocksdb_options_destroy(rocksdb_options_t* options) { delete options; }
|
|
2740
|
+
|
|
2814
2741
|
rocksdb_options_t* rocksdb_options_create_copy(rocksdb_options_t* options) {
|
|
2815
2742
|
return new rocksdb_options_t(*options);
|
|
2816
2743
|
}
|
|
2817
2744
|
|
|
2818
|
-
void rocksdb_options_increase_parallelism(
|
|
2819
|
-
|
|
2745
|
+
void rocksdb_options_increase_parallelism(rocksdb_options_t* opt,
|
|
2746
|
+
int total_threads) {
|
|
2820
2747
|
opt->rep.IncreaseParallelism(total_threads);
|
|
2821
2748
|
}
|
|
2822
2749
|
|
|
2823
|
-
void rocksdb_options_optimize_for_point_lookup(
|
|
2824
|
-
|
|
2750
|
+
void rocksdb_options_optimize_for_point_lookup(rocksdb_options_t* opt,
|
|
2751
|
+
uint64_t block_cache_size_mb) {
|
|
2825
2752
|
opt->rep.OptimizeForPointLookup(block_cache_size_mb);
|
|
2826
2753
|
}
|
|
2827
2754
|
|
|
@@ -2835,8 +2762,8 @@ void rocksdb_options_optimize_universal_style_compaction(
|
|
|
2835
2762
|
opt->rep.OptimizeUniversalStyleCompaction(memtable_memory_budget);
|
|
2836
2763
|
}
|
|
2837
2764
|
|
|
2838
|
-
void rocksdb_options_set_allow_ingest_behind(
|
|
2839
|
-
|
|
2765
|
+
void rocksdb_options_set_allow_ingest_behind(rocksdb_options_t* opt,
|
|
2766
|
+
unsigned char v) {
|
|
2840
2767
|
opt->rep.allow_ingest_behind = v;
|
|
2841
2768
|
}
|
|
2842
2769
|
|
|
@@ -2844,9 +2771,8 @@ unsigned char rocksdb_options_get_allow_ingest_behind(rocksdb_options_t* opt) {
|
|
|
2844
2771
|
return opt->rep.allow_ingest_behind;
|
|
2845
2772
|
}
|
|
2846
2773
|
|
|
2847
|
-
void rocksdb_options_set_compaction_filter(
|
|
2848
|
-
|
|
2849
|
-
rocksdb_compactionfilter_t* filter) {
|
|
2774
|
+
void rocksdb_options_set_compaction_filter(rocksdb_options_t* opt,
|
|
2775
|
+
rocksdb_compactionfilter_t* filter) {
|
|
2850
2776
|
opt->rep.compaction_filter = filter;
|
|
2851
2777
|
}
|
|
2852
2778
|
|
|
@@ -2856,8 +2782,8 @@ void rocksdb_options_set_compaction_filter_factory(
|
|
|
2856
2782
|
std::shared_ptr<CompactionFilterFactory>(factory);
|
|
2857
2783
|
}
|
|
2858
2784
|
|
|
2859
|
-
void rocksdb_options_compaction_readahead_size(
|
|
2860
|
-
|
|
2785
|
+
void rocksdb_options_compaction_readahead_size(rocksdb_options_t* opt,
|
|
2786
|
+
size_t s) {
|
|
2861
2787
|
opt->rep.compaction_readahead_size = s;
|
|
2862
2788
|
}
|
|
2863
2789
|
|
|
@@ -2865,20 +2791,18 @@ size_t rocksdb_options_get_compaction_readahead_size(rocksdb_options_t* opt) {
|
|
|
2865
2791
|
return opt->rep.compaction_readahead_size;
|
|
2866
2792
|
}
|
|
2867
2793
|
|
|
2868
|
-
void rocksdb_options_set_comparator(
|
|
2869
|
-
|
|
2870
|
-
rocksdb_comparator_t* cmp) {
|
|
2794
|
+
void rocksdb_options_set_comparator(rocksdb_options_t* opt,
|
|
2795
|
+
rocksdb_comparator_t* cmp) {
|
|
2871
2796
|
opt->rep.comparator = cmp;
|
|
2872
2797
|
}
|
|
2873
2798
|
|
|
2874
2799
|
void rocksdb_options_set_merge_operator(
|
|
2875
|
-
rocksdb_options_t* opt,
|
|
2876
|
-
rocksdb_mergeoperator_t* merge_operator) {
|
|
2800
|
+
rocksdb_options_t* opt, rocksdb_mergeoperator_t* merge_operator) {
|
|
2877
2801
|
opt->rep.merge_operator = std::shared_ptr<MergeOperator>(merge_operator);
|
|
2878
2802
|
}
|
|
2879
2803
|
|
|
2880
|
-
void rocksdb_options_set_create_if_missing(
|
|
2881
|
-
|
|
2804
|
+
void rocksdb_options_set_create_if_missing(rocksdb_options_t* opt,
|
|
2805
|
+
unsigned char v) {
|
|
2882
2806
|
opt->rep.create_if_missing = v;
|
|
2883
2807
|
}
|
|
2884
2808
|
|
|
@@ -2886,8 +2810,8 @@ unsigned char rocksdb_options_get_create_if_missing(rocksdb_options_t* opt) {
|
|
|
2886
2810
|
return opt->rep.create_if_missing;
|
|
2887
2811
|
}
|
|
2888
2812
|
|
|
2889
|
-
void rocksdb_options_set_create_missing_column_families(
|
|
2890
|
-
|
|
2813
|
+
void rocksdb_options_set_create_missing_column_families(rocksdb_options_t* opt,
|
|
2814
|
+
unsigned char v) {
|
|
2891
2815
|
opt->rep.create_missing_column_families = v;
|
|
2892
2816
|
}
|
|
2893
2817
|
|
|
@@ -2896,8 +2820,8 @@ unsigned char rocksdb_options_get_create_missing_column_families(
|
|
|
2896
2820
|
return opt->rep.create_missing_column_families;
|
|
2897
2821
|
}
|
|
2898
2822
|
|
|
2899
|
-
void rocksdb_options_set_error_if_exists(
|
|
2900
|
-
|
|
2823
|
+
void rocksdb_options_set_error_if_exists(rocksdb_options_t* opt,
|
|
2824
|
+
unsigned char v) {
|
|
2901
2825
|
opt->rep.error_if_exists = v;
|
|
2902
2826
|
}
|
|
2903
2827
|
|
|
@@ -2905,8 +2829,8 @@ unsigned char rocksdb_options_get_error_if_exists(rocksdb_options_t* opt) {
|
|
|
2905
2829
|
return opt->rep.error_if_exists;
|
|
2906
2830
|
}
|
|
2907
2831
|
|
|
2908
|
-
void rocksdb_options_set_paranoid_checks(
|
|
2909
|
-
|
|
2832
|
+
void rocksdb_options_set_paranoid_checks(rocksdb_options_t* opt,
|
|
2833
|
+
unsigned char v) {
|
|
2910
2834
|
opt->rep.paranoid_checks = v;
|
|
2911
2835
|
}
|
|
2912
2836
|
|
|
@@ -2934,8 +2858,7 @@ void rocksdb_options_set_info_log(rocksdb_options_t* opt, rocksdb_logger_t* l) {
|
|
|
2934
2858
|
}
|
|
2935
2859
|
}
|
|
2936
2860
|
|
|
2937
|
-
void rocksdb_options_set_info_log_level(
|
|
2938
|
-
rocksdb_options_t* opt, int v) {
|
|
2861
|
+
void rocksdb_options_set_info_log_level(rocksdb_options_t* opt, int v) {
|
|
2939
2862
|
opt->rep.info_log_level = static_cast<InfoLogLevel>(v);
|
|
2940
2863
|
}
|
|
2941
2864
|
|
|
@@ -2968,7 +2891,8 @@ int rocksdb_options_get_max_open_files(rocksdb_options_t* opt) {
|
|
|
2968
2891
|
return opt->rep.max_open_files;
|
|
2969
2892
|
}
|
|
2970
2893
|
|
|
2971
|
-
void rocksdb_options_set_max_file_opening_threads(rocksdb_options_t* opt,
|
|
2894
|
+
void rocksdb_options_set_max_file_opening_threads(rocksdb_options_t* opt,
|
|
2895
|
+
int n) {
|
|
2972
2896
|
opt->rep.max_file_opening_threads = n;
|
|
2973
2897
|
}
|
|
2974
2898
|
|
|
@@ -2976,7 +2900,8 @@ int rocksdb_options_get_max_file_opening_threads(rocksdb_options_t* opt) {
|
|
|
2976
2900
|
return opt->rep.max_file_opening_threads;
|
|
2977
2901
|
}
|
|
2978
2902
|
|
|
2979
|
-
void rocksdb_options_set_max_total_wal_size(rocksdb_options_t* opt,
|
|
2903
|
+
void rocksdb_options_set_max_total_wal_size(rocksdb_options_t* opt,
|
|
2904
|
+
uint64_t n) {
|
|
2980
2905
|
opt->rep.max_total_wal_size = n;
|
|
2981
2906
|
}
|
|
2982
2907
|
|
|
@@ -2984,8 +2909,8 @@ uint64_t rocksdb_options_get_max_total_wal_size(rocksdb_options_t* opt) {
|
|
|
2984
2909
|
return opt->rep.max_total_wal_size;
|
|
2985
2910
|
}
|
|
2986
2911
|
|
|
2987
|
-
void rocksdb_options_set_target_file_size_base(
|
|
2988
|
-
|
|
2912
|
+
void rocksdb_options_set_target_file_size_base(rocksdb_options_t* opt,
|
|
2913
|
+
uint64_t n) {
|
|
2989
2914
|
opt->rep.target_file_size_base = n;
|
|
2990
2915
|
}
|
|
2991
2916
|
|
|
@@ -2993,8 +2918,8 @@ uint64_t rocksdb_options_get_target_file_size_base(rocksdb_options_t* opt) {
|
|
|
2993
2918
|
return opt->rep.target_file_size_base;
|
|
2994
2919
|
}
|
|
2995
2920
|
|
|
2996
|
-
void rocksdb_options_set_target_file_size_multiplier(
|
|
2997
|
-
|
|
2921
|
+
void rocksdb_options_set_target_file_size_multiplier(rocksdb_options_t* opt,
|
|
2922
|
+
int n) {
|
|
2998
2923
|
opt->rep.target_file_size_multiplier = n;
|
|
2999
2924
|
}
|
|
3000
2925
|
|
|
@@ -3002,8 +2927,8 @@ int rocksdb_options_get_target_file_size_multiplier(rocksdb_options_t* opt) {
|
|
|
3002
2927
|
return opt->rep.target_file_size_multiplier;
|
|
3003
2928
|
}
|
|
3004
2929
|
|
|
3005
|
-
void rocksdb_options_set_max_bytes_for_level_base(
|
|
3006
|
-
|
|
2930
|
+
void rocksdb_options_set_max_bytes_for_level_base(rocksdb_options_t* opt,
|
|
2931
|
+
uint64_t n) {
|
|
3007
2932
|
opt->rep.max_bytes_for_level_base = n;
|
|
3008
2933
|
}
|
|
3009
2934
|
|
|
@@ -3184,8 +3109,8 @@ int rocksdb_options_get_level0_file_num_compaction_trigger(
|
|
|
3184
3109
|
return opt->rep.level0_file_num_compaction_trigger;
|
|
3185
3110
|
}
|
|
3186
3111
|
|
|
3187
|
-
void rocksdb_options_set_level0_slowdown_writes_trigger(
|
|
3188
|
-
|
|
3112
|
+
void rocksdb_options_set_level0_slowdown_writes_trigger(rocksdb_options_t* opt,
|
|
3113
|
+
int n) {
|
|
3189
3114
|
opt->rep.level0_slowdown_writes_trigger = n;
|
|
3190
3115
|
}
|
|
3191
3116
|
|
|
@@ -3193,8 +3118,8 @@ int rocksdb_options_get_level0_slowdown_writes_trigger(rocksdb_options_t* opt) {
|
|
|
3193
3118
|
return opt->rep.level0_slowdown_writes_trigger;
|
|
3194
3119
|
}
|
|
3195
3120
|
|
|
3196
|
-
void rocksdb_options_set_level0_stop_writes_trigger(
|
|
3197
|
-
|
|
3121
|
+
void rocksdb_options_set_level0_stop_writes_trigger(rocksdb_options_t* opt,
|
|
3122
|
+
int n) {
|
|
3198
3123
|
opt->rep.level0_stop_writes_trigger = n;
|
|
3199
3124
|
}
|
|
3200
3125
|
|
|
@@ -3202,7 +3127,7 @@ int rocksdb_options_get_level0_stop_writes_trigger(rocksdb_options_t* opt) {
|
|
|
3202
3127
|
return opt->rep.level0_stop_writes_trigger;
|
|
3203
3128
|
}
|
|
3204
3129
|
|
|
3205
|
-
void rocksdb_options_set_wal_recovery_mode(rocksdb_options_t* opt,int mode) {
|
|
3130
|
+
void rocksdb_options_set_wal_recovery_mode(rocksdb_options_t* opt, int mode) {
|
|
3206
3131
|
opt->rep.wal_recovery_mode = static_cast<WALRecoveryMode>(mode);
|
|
3207
3132
|
}
|
|
3208
3133
|
|
|
@@ -3232,7 +3157,7 @@ void rocksdb_options_set_compression_per_level(rocksdb_options_t* opt,
|
|
|
3232
3157
|
opt->rep.compression_per_level.resize(num_levels);
|
|
3233
3158
|
for (size_t i = 0; i < num_levels; ++i) {
|
|
3234
3159
|
opt->rep.compression_per_level[i] =
|
|
3235
|
-
|
|
3160
|
+
static_cast<CompressionType>(level_values[i]);
|
|
3236
3161
|
}
|
|
3237
3162
|
}
|
|
3238
3163
|
|
|
@@ -3331,8 +3256,7 @@ void rocksdb_options_set_prefix_extractor(
|
|
|
3331
3256
|
opt->rep.prefix_extractor.reset(prefix_extractor);
|
|
3332
3257
|
}
|
|
3333
3258
|
|
|
3334
|
-
void rocksdb_options_set_use_fsync(
|
|
3335
|
-
rocksdb_options_t* opt, int use_fsync) {
|
|
3259
|
+
void rocksdb_options_set_use_fsync(rocksdb_options_t* opt, int use_fsync) {
|
|
3336
3260
|
opt->rep.use_fsync = use_fsync;
|
|
3337
3261
|
}
|
|
3338
3262
|
|
|
@@ -3340,13 +3264,12 @@ int rocksdb_options_get_use_fsync(rocksdb_options_t* opt) {
|
|
|
3340
3264
|
return opt->rep.use_fsync;
|
|
3341
3265
|
}
|
|
3342
3266
|
|
|
3343
|
-
void rocksdb_options_set_db_log_dir(
|
|
3344
|
-
|
|
3267
|
+
void rocksdb_options_set_db_log_dir(rocksdb_options_t* opt,
|
|
3268
|
+
const char* db_log_dir) {
|
|
3345
3269
|
opt->rep.db_log_dir = db_log_dir;
|
|
3346
3270
|
}
|
|
3347
3271
|
|
|
3348
|
-
void rocksdb_options_set_wal_dir(
|
|
3349
|
-
rocksdb_options_t* opt, const char* v) {
|
|
3272
|
+
void rocksdb_options_set_wal_dir(rocksdb_options_t* opt, const char* v) {
|
|
3350
3273
|
opt->rep.wal_dir = v;
|
|
3351
3274
|
}
|
|
3352
3275
|
|
|
@@ -3358,8 +3281,8 @@ uint64_t rocksdb_options_get_WAL_ttl_seconds(rocksdb_options_t* opt) {
|
|
|
3358
3281
|
return opt->rep.WAL_ttl_seconds;
|
|
3359
3282
|
}
|
|
3360
3283
|
|
|
3361
|
-
void rocksdb_options_set_WAL_size_limit_MB(
|
|
3362
|
-
|
|
3284
|
+
void rocksdb_options_set_WAL_size_limit_MB(rocksdb_options_t* opt,
|
|
3285
|
+
uint64_t limit) {
|
|
3363
3286
|
opt->rep.WAL_size_limit_MB = limit;
|
|
3364
3287
|
}
|
|
3365
3288
|
|
|
@@ -3367,8 +3290,8 @@ uint64_t rocksdb_options_get_WAL_size_limit_MB(rocksdb_options_t* opt) {
|
|
|
3367
3290
|
return opt->rep.WAL_size_limit_MB;
|
|
3368
3291
|
}
|
|
3369
3292
|
|
|
3370
|
-
void rocksdb_options_set_manifest_preallocation_size(
|
|
3371
|
-
|
|
3293
|
+
void rocksdb_options_set_manifest_preallocation_size(rocksdb_options_t* opt,
|
|
3294
|
+
size_t v) {
|
|
3372
3295
|
opt->rep.manifest_preallocation_size = v;
|
|
3373
3296
|
}
|
|
3374
3297
|
|
|
@@ -3395,8 +3318,8 @@ unsigned char rocksdb_options_get_use_direct_io_for_flush_and_compaction(
|
|
|
3395
3318
|
return opt->rep.use_direct_io_for_flush_and_compaction;
|
|
3396
3319
|
}
|
|
3397
3320
|
|
|
3398
|
-
void rocksdb_options_set_allow_mmap_reads(
|
|
3399
|
-
|
|
3321
|
+
void rocksdb_options_set_allow_mmap_reads(rocksdb_options_t* opt,
|
|
3322
|
+
unsigned char v) {
|
|
3400
3323
|
opt->rep.allow_mmap_reads = v;
|
|
3401
3324
|
}
|
|
3402
3325
|
|
|
@@ -3404,8 +3327,8 @@ unsigned char rocksdb_options_get_allow_mmap_reads(rocksdb_options_t* opt) {
|
|
|
3404
3327
|
return opt->rep.allow_mmap_reads;
|
|
3405
3328
|
}
|
|
3406
3329
|
|
|
3407
|
-
void rocksdb_options_set_allow_mmap_writes(
|
|
3408
|
-
|
|
3330
|
+
void rocksdb_options_set_allow_mmap_writes(rocksdb_options_t* opt,
|
|
3331
|
+
unsigned char v) {
|
|
3409
3332
|
opt->rep.allow_mmap_writes = v;
|
|
3410
3333
|
}
|
|
3411
3334
|
|
|
@@ -3413,8 +3336,8 @@ unsigned char rocksdb_options_get_allow_mmap_writes(rocksdb_options_t* opt) {
|
|
|
3413
3336
|
return opt->rep.allow_mmap_writes;
|
|
3414
3337
|
}
|
|
3415
3338
|
|
|
3416
|
-
void rocksdb_options_set_is_fd_close_on_exec(
|
|
3417
|
-
|
|
3339
|
+
void rocksdb_options_set_is_fd_close_on_exec(rocksdb_options_t* opt,
|
|
3340
|
+
unsigned char v) {
|
|
3418
3341
|
opt->rep.is_fd_close_on_exec = v;
|
|
3419
3342
|
}
|
|
3420
3343
|
|
|
@@ -3422,8 +3345,8 @@ unsigned char rocksdb_options_get_is_fd_close_on_exec(rocksdb_options_t* opt) {
|
|
|
3422
3345
|
return opt->rep.is_fd_close_on_exec;
|
|
3423
3346
|
}
|
|
3424
3347
|
|
|
3425
|
-
void rocksdb_options_set_stats_dump_period_sec(
|
|
3426
|
-
|
|
3348
|
+
void rocksdb_options_set_stats_dump_period_sec(rocksdb_options_t* opt,
|
|
3349
|
+
unsigned int v) {
|
|
3427
3350
|
opt->rep.stats_dump_period_sec = v;
|
|
3428
3351
|
}
|
|
3429
3352
|
|
|
@@ -3441,8 +3364,8 @@ unsigned int rocksdb_options_get_stats_persist_period_sec(
|
|
|
3441
3364
|
return opt->rep.stats_persist_period_sec;
|
|
3442
3365
|
}
|
|
3443
3366
|
|
|
3444
|
-
void rocksdb_options_set_advise_random_on_open(
|
|
3445
|
-
|
|
3367
|
+
void rocksdb_options_set_advise_random_on_open(rocksdb_options_t* opt,
|
|
3368
|
+
unsigned char v) {
|
|
3446
3369
|
opt->rep.advise_random_on_open = v;
|
|
3447
3370
|
}
|
|
3448
3371
|
|
|
@@ -3451,9 +3374,9 @@ unsigned char rocksdb_options_get_advise_random_on_open(
|
|
|
3451
3374
|
return opt->rep.advise_random_on_open;
|
|
3452
3375
|
}
|
|
3453
3376
|
|
|
3454
|
-
void rocksdb_options_set_access_hint_on_compaction_start(
|
|
3455
|
-
|
|
3456
|
-
switch(v) {
|
|
3377
|
+
void rocksdb_options_set_access_hint_on_compaction_start(rocksdb_options_t* opt,
|
|
3378
|
+
int v) {
|
|
3379
|
+
switch (v) {
|
|
3457
3380
|
case 0:
|
|
3458
3381
|
opt->rep.access_hint_on_compaction_start =
|
|
3459
3382
|
ROCKSDB_NAMESPACE::Options::NONE;
|
|
@@ -3480,8 +3403,8 @@ int rocksdb_options_get_access_hint_on_compaction_start(
|
|
|
3480
3403
|
return opt->rep.access_hint_on_compaction_start;
|
|
3481
3404
|
}
|
|
3482
3405
|
|
|
3483
|
-
void rocksdb_options_set_use_adaptive_mutex(
|
|
3484
|
-
|
|
3406
|
+
void rocksdb_options_set_use_adaptive_mutex(rocksdb_options_t* opt,
|
|
3407
|
+
unsigned char v) {
|
|
3485
3408
|
opt->rep.use_adaptive_mutex = v;
|
|
3486
3409
|
}
|
|
3487
3410
|
|
|
@@ -3489,8 +3412,8 @@ unsigned char rocksdb_options_get_use_adaptive_mutex(rocksdb_options_t* opt) {
|
|
|
3489
3412
|
return opt->rep.use_adaptive_mutex;
|
|
3490
3413
|
}
|
|
3491
3414
|
|
|
3492
|
-
void rocksdb_options_set_wal_bytes_per_sync(
|
|
3493
|
-
|
|
3415
|
+
void rocksdb_options_set_wal_bytes_per_sync(rocksdb_options_t* opt,
|
|
3416
|
+
uint64_t v) {
|
|
3494
3417
|
opt->rep.wal_bytes_per_sync = v;
|
|
3495
3418
|
}
|
|
3496
3419
|
|
|
@@ -3498,8 +3421,7 @@ uint64_t rocksdb_options_get_wal_bytes_per_sync(rocksdb_options_t* opt) {
|
|
|
3498
3421
|
return opt->rep.wal_bytes_per_sync;
|
|
3499
3422
|
}
|
|
3500
3423
|
|
|
3501
|
-
void rocksdb_options_set_bytes_per_sync(
|
|
3502
|
-
rocksdb_options_t* opt, uint64_t v) {
|
|
3424
|
+
void rocksdb_options_set_bytes_per_sync(rocksdb_options_t* opt, uint64_t v) {
|
|
3503
3425
|
opt->rep.bytes_per_sync = v;
|
|
3504
3426
|
}
|
|
3505
3427
|
|
|
@@ -3547,7 +3469,8 @@ uint64_t rocksdb_options_get_max_sequential_skip_in_iterations(
|
|
|
3547
3469
|
return opt->rep.max_sequential_skip_in_iterations;
|
|
3548
3470
|
}
|
|
3549
3471
|
|
|
3550
|
-
void rocksdb_options_set_max_write_buffer_number(rocksdb_options_t* opt,
|
|
3472
|
+
void rocksdb_options_set_max_write_buffer_number(rocksdb_options_t* opt,
|
|
3473
|
+
int n) {
|
|
3551
3474
|
opt->rep.max_write_buffer_number = n;
|
|
3552
3475
|
}
|
|
3553
3476
|
|
|
@@ -3555,7 +3478,8 @@ int rocksdb_options_get_max_write_buffer_number(rocksdb_options_t* opt) {
|
|
|
3555
3478
|
return opt->rep.max_write_buffer_number;
|
|
3556
3479
|
}
|
|
3557
3480
|
|
|
3558
|
-
void rocksdb_options_set_min_write_buffer_number_to_merge(
|
|
3481
|
+
void rocksdb_options_set_min_write_buffer_number_to_merge(
|
|
3482
|
+
rocksdb_options_t* opt, int n) {
|
|
3559
3483
|
opt->rep.min_write_buffer_number_to_merge = n;
|
|
3560
3484
|
}
|
|
3561
3485
|
|
|
@@ -3620,7 +3544,8 @@ int rocksdb_options_get_max_background_jobs(rocksdb_options_t* opt) {
|
|
|
3620
3544
|
return opt->rep.max_background_jobs;
|
|
3621
3545
|
}
|
|
3622
3546
|
|
|
3623
|
-
void rocksdb_options_set_max_background_compactions(rocksdb_options_t* opt,
|
|
3547
|
+
void rocksdb_options_set_max_background_compactions(rocksdb_options_t* opt,
|
|
3548
|
+
int n) {
|
|
3624
3549
|
opt->rep.max_background_compactions = n;
|
|
3625
3550
|
}
|
|
3626
3551
|
|
|
@@ -3654,7 +3579,8 @@ size_t rocksdb_options_get_max_log_file_size(rocksdb_options_t* opt) {
|
|
|
3654
3579
|
return opt->rep.max_log_file_size;
|
|
3655
3580
|
}
|
|
3656
3581
|
|
|
3657
|
-
void rocksdb_options_set_log_file_time_to_roll(rocksdb_options_t* opt,
|
|
3582
|
+
void rocksdb_options_set_log_file_time_to_roll(rocksdb_options_t* opt,
|
|
3583
|
+
size_t v) {
|
|
3658
3584
|
opt->rep.log_file_time_to_roll = v;
|
|
3659
3585
|
}
|
|
3660
3586
|
|
|
@@ -3679,7 +3605,8 @@ size_t rocksdb_options_get_recycle_log_file_num(rocksdb_options_t* opt) {
|
|
|
3679
3605
|
return opt->rep.recycle_log_file_num;
|
|
3680
3606
|
}
|
|
3681
3607
|
|
|
3682
|
-
void rocksdb_options_set_soft_pending_compaction_bytes_limit(
|
|
3608
|
+
void rocksdb_options_set_soft_pending_compaction_bytes_limit(
|
|
3609
|
+
rocksdb_options_t* opt, size_t v) {
|
|
3683
3610
|
opt->rep.soft_pending_compaction_bytes_limit = v;
|
|
3684
3611
|
}
|
|
3685
3612
|
|
|
@@ -3688,7 +3615,8 @@ size_t rocksdb_options_get_soft_pending_compaction_bytes_limit(
|
|
|
3688
3615
|
return opt->rep.soft_pending_compaction_bytes_limit;
|
|
3689
3616
|
}
|
|
3690
3617
|
|
|
3691
|
-
void rocksdb_options_set_hard_pending_compaction_bytes_limit(
|
|
3618
|
+
void rocksdb_options_set_hard_pending_compaction_bytes_limit(
|
|
3619
|
+
rocksdb_options_t* opt, size_t v) {
|
|
3692
3620
|
opt->rep.hard_pending_compaction_bytes_limit = v;
|
|
3693
3621
|
}
|
|
3694
3622
|
|
|
@@ -3697,8 +3625,8 @@ size_t rocksdb_options_get_hard_pending_compaction_bytes_limit(
|
|
|
3697
3625
|
return opt->rep.hard_pending_compaction_bytes_limit;
|
|
3698
3626
|
}
|
|
3699
3627
|
|
|
3700
|
-
void rocksdb_options_set_max_manifest_file_size(
|
|
3701
|
-
|
|
3628
|
+
void rocksdb_options_set_max_manifest_file_size(rocksdb_options_t* opt,
|
|
3629
|
+
size_t v) {
|
|
3702
3630
|
opt->rep.max_manifest_file_size = v;
|
|
3703
3631
|
}
|
|
3704
3632
|
|
|
@@ -3706,8 +3634,8 @@ size_t rocksdb_options_get_max_manifest_file_size(rocksdb_options_t* opt) {
|
|
|
3706
3634
|
return opt->rep.max_manifest_file_size;
|
|
3707
3635
|
}
|
|
3708
3636
|
|
|
3709
|
-
void rocksdb_options_set_table_cache_numshardbits(
|
|
3710
|
-
|
|
3637
|
+
void rocksdb_options_set_table_cache_numshardbits(rocksdb_options_t* opt,
|
|
3638
|
+
int v) {
|
|
3711
3639
|
opt->rep.table_cache_numshardbits = v;
|
|
3712
3640
|
}
|
|
3713
3641
|
|
|
@@ -3715,8 +3643,7 @@ int rocksdb_options_get_table_cache_numshardbits(rocksdb_options_t* opt) {
|
|
|
3715
3643
|
return opt->rep.table_cache_numshardbits;
|
|
3716
3644
|
}
|
|
3717
3645
|
|
|
3718
|
-
void rocksdb_options_set_arena_block_size(
|
|
3719
|
-
rocksdb_options_t* opt, size_t v) {
|
|
3646
|
+
void rocksdb_options_set_arena_block_size(rocksdb_options_t* opt, size_t v) {
|
|
3720
3647
|
opt->rep.arena_block_size = v;
|
|
3721
3648
|
}
|
|
3722
3649
|
|
|
@@ -3724,7 +3651,8 @@ size_t rocksdb_options_get_arena_block_size(rocksdb_options_t* opt) {
|
|
|
3724
3651
|
return opt->rep.arena_block_size;
|
|
3725
3652
|
}
|
|
3726
3653
|
|
|
3727
|
-
void rocksdb_options_set_disable_auto_compactions(rocksdb_options_t* opt,
|
|
3654
|
+
void rocksdb_options_set_disable_auto_compactions(rocksdb_options_t* opt,
|
|
3655
|
+
int disable) {
|
|
3728
3656
|
opt->rep.disable_auto_compactions = disable;
|
|
3729
3657
|
}
|
|
3730
3658
|
|
|
@@ -3733,7 +3661,8 @@ unsigned char rocksdb_options_get_disable_auto_compactions(
|
|
|
3733
3661
|
return opt->rep.disable_auto_compactions;
|
|
3734
3662
|
}
|
|
3735
3663
|
|
|
3736
|
-
void rocksdb_options_set_optimize_filters_for_hits(rocksdb_options_t* opt,
|
|
3664
|
+
void rocksdb_options_set_optimize_filters_for_hits(rocksdb_options_t* opt,
|
|
3665
|
+
int v) {
|
|
3737
3666
|
opt->rep.optimize_filters_for_hits = v;
|
|
3738
3667
|
}
|
|
3739
3668
|
|
|
@@ -3756,7 +3685,7 @@ void rocksdb_options_prepare_for_bulk_load(rocksdb_options_t* opt) {
|
|
|
3756
3685
|
opt->rep.PrepareForBulkLoad();
|
|
3757
3686
|
}
|
|
3758
3687
|
|
|
3759
|
-
void rocksdb_options_set_memtable_vector_rep(rocksdb_options_t
|
|
3688
|
+
void rocksdb_options_set_memtable_vector_rep(rocksdb_options_t* opt) {
|
|
3760
3689
|
opt->rep.memtable_factory.reset(new ROCKSDB_NAMESPACE::VectorRepFactory);
|
|
3761
3690
|
}
|
|
3762
3691
|
|
|
@@ -3779,24 +3708,27 @@ size_t rocksdb_options_get_memtable_huge_page_size(rocksdb_options_t* opt) {
|
|
|
3779
3708
|
return opt->rep.memtable_huge_page_size;
|
|
3780
3709
|
}
|
|
3781
3710
|
|
|
3782
|
-
void rocksdb_options_set_hash_skip_list_rep(
|
|
3783
|
-
|
|
3784
|
-
|
|
3711
|
+
void rocksdb_options_set_hash_skip_list_rep(rocksdb_options_t* opt,
|
|
3712
|
+
size_t bucket_count,
|
|
3713
|
+
int32_t skiplist_height,
|
|
3714
|
+
int32_t skiplist_branching_factor) {
|
|
3785
3715
|
ROCKSDB_NAMESPACE::MemTableRepFactory* factory =
|
|
3786
3716
|
ROCKSDB_NAMESPACE::NewHashSkipListRepFactory(
|
|
3787
3717
|
bucket_count, skiplist_height, skiplist_branching_factor);
|
|
3788
3718
|
opt->rep.memtable_factory.reset(factory);
|
|
3789
3719
|
}
|
|
3790
3720
|
|
|
3791
|
-
void rocksdb_options_set_hash_link_list_rep(
|
|
3792
|
-
|
|
3721
|
+
void rocksdb_options_set_hash_link_list_rep(rocksdb_options_t* opt,
|
|
3722
|
+
size_t bucket_count) {
|
|
3793
3723
|
opt->rep.memtable_factory.reset(
|
|
3794
3724
|
ROCKSDB_NAMESPACE::NewHashLinkListRepFactory(bucket_count));
|
|
3795
3725
|
}
|
|
3796
3726
|
|
|
3797
|
-
void rocksdb_options_set_plain_table_factory(
|
|
3798
|
-
|
|
3799
|
-
|
|
3727
|
+
void rocksdb_options_set_plain_table_factory(rocksdb_options_t* opt,
|
|
3728
|
+
uint32_t user_key_len,
|
|
3729
|
+
int bloom_bits_per_key,
|
|
3730
|
+
double hash_table_ratio,
|
|
3731
|
+
size_t index_sparseness) {
|
|
3800
3732
|
ROCKSDB_NAMESPACE::PlainTableOptions options;
|
|
3801
3733
|
options.user_key_len = user_key_len;
|
|
3802
3734
|
options.bloom_bits_per_key = bloom_bits_per_key;
|
|
@@ -3808,8 +3740,8 @@ void rocksdb_options_set_plain_table_factory(
|
|
|
3808
3740
|
opt->rep.table_factory.reset(factory);
|
|
3809
3741
|
}
|
|
3810
3742
|
|
|
3811
|
-
void rocksdb_options_set_max_successive_merges(
|
|
3812
|
-
|
|
3743
|
+
void rocksdb_options_set_max_successive_merges(rocksdb_options_t* opt,
|
|
3744
|
+
size_t v) {
|
|
3813
3745
|
opt->rep.max_successive_merges = v;
|
|
3814
3746
|
}
|
|
3815
3747
|
|
|
@@ -3817,8 +3749,7 @@ size_t rocksdb_options_get_max_successive_merges(rocksdb_options_t* opt) {
|
|
|
3817
3749
|
return opt->rep.max_successive_merges;
|
|
3818
3750
|
}
|
|
3819
3751
|
|
|
3820
|
-
void rocksdb_options_set_bloom_locality(
|
|
3821
|
-
rocksdb_options_t* opt, uint32_t v) {
|
|
3752
|
+
void rocksdb_options_set_bloom_locality(rocksdb_options_t* opt, uint32_t v) {
|
|
3822
3753
|
opt->rep.bloom_locality = v;
|
|
3823
3754
|
}
|
|
3824
3755
|
|
|
@@ -3826,8 +3757,8 @@ uint32_t rocksdb_options_get_bloom_locality(rocksdb_options_t* opt) {
|
|
|
3826
3757
|
return opt->rep.bloom_locality;
|
|
3827
3758
|
}
|
|
3828
3759
|
|
|
3829
|
-
void rocksdb_options_set_inplace_update_support(
|
|
3830
|
-
|
|
3760
|
+
void rocksdb_options_set_inplace_update_support(rocksdb_options_t* opt,
|
|
3761
|
+
unsigned char v) {
|
|
3831
3762
|
opt->rep.inplace_update_support = v;
|
|
3832
3763
|
}
|
|
3833
3764
|
|
|
@@ -3836,8 +3767,8 @@ unsigned char rocksdb_options_get_inplace_update_support(
|
|
|
3836
3767
|
return opt->rep.inplace_update_support;
|
|
3837
3768
|
}
|
|
3838
3769
|
|
|
3839
|
-
void rocksdb_options_set_inplace_update_num_locks(
|
|
3840
|
-
|
|
3770
|
+
void rocksdb_options_set_inplace_update_num_locks(rocksdb_options_t* opt,
|
|
3771
|
+
size_t v) {
|
|
3841
3772
|
opt->rep.inplace_update_num_locks = v;
|
|
3842
3773
|
}
|
|
3843
3774
|
|
|
@@ -3845,8 +3776,7 @@ size_t rocksdb_options_get_inplace_update_num_locks(rocksdb_options_t* opt) {
|
|
|
3845
3776
|
return opt->rep.inplace_update_num_locks;
|
|
3846
3777
|
}
|
|
3847
3778
|
|
|
3848
|
-
void rocksdb_options_set_report_bg_io_stats(
|
|
3849
|
-
rocksdb_options_t* opt, int v) {
|
|
3779
|
+
void rocksdb_options_set_report_bg_io_stats(rocksdb_options_t* opt, int v) {
|
|
3850
3780
|
opt->rep.report_bg_io_stats = v;
|
|
3851
3781
|
}
|
|
3852
3782
|
|
|
@@ -3854,7 +3784,7 @@ unsigned char rocksdb_options_get_report_bg_io_stats(rocksdb_options_t* opt) {
|
|
|
3854
3784
|
return opt->rep.report_bg_io_stats;
|
|
3855
3785
|
}
|
|
3856
3786
|
|
|
3857
|
-
void rocksdb_options_set_compaction_style(rocksdb_options_t
|
|
3787
|
+
void rocksdb_options_set_compaction_style(rocksdb_options_t* opt, int style) {
|
|
3858
3788
|
opt->rep.compaction_style =
|
|
3859
3789
|
static_cast<ROCKSDB_NAMESPACE::CompactionStyle>(style);
|
|
3860
3790
|
}
|
|
@@ -3863,17 +3793,17 @@ int rocksdb_options_get_compaction_style(rocksdb_options_t* opt) {
|
|
|
3863
3793
|
return opt->rep.compaction_style;
|
|
3864
3794
|
}
|
|
3865
3795
|
|
|
3866
|
-
void rocksdb_options_set_universal_compaction_options(
|
|
3796
|
+
void rocksdb_options_set_universal_compaction_options(
|
|
3797
|
+
rocksdb_options_t* opt, rocksdb_universal_compaction_options_t* uco) {
|
|
3867
3798
|
opt->rep.compaction_options_universal = *(uco->rep);
|
|
3868
3799
|
}
|
|
3869
3800
|
|
|
3870
3801
|
void rocksdb_options_set_fifo_compaction_options(
|
|
3871
|
-
rocksdb_options_t* opt,
|
|
3872
|
-
rocksdb_fifo_compaction_options_t* fifo) {
|
|
3802
|
+
rocksdb_options_t* opt, rocksdb_fifo_compaction_options_t* fifo) {
|
|
3873
3803
|
opt->rep.compaction_options_fifo = fifo->rep;
|
|
3874
3804
|
}
|
|
3875
3805
|
|
|
3876
|
-
char
|
|
3806
|
+
char* rocksdb_options_statistics_get_string(rocksdb_options_t* opt) {
|
|
3877
3807
|
ROCKSDB_NAMESPACE::Statistics* statistics = opt->rep.statistics.get();
|
|
3878
3808
|
if (statistics) {
|
|
3879
3809
|
return strdup(statistics->ToString().c_str());
|
|
@@ -3881,7 +3811,8 @@ char *rocksdb_options_statistics_get_string(rocksdb_options_t *opt) {
|
|
|
3881
3811
|
return nullptr;
|
|
3882
3812
|
}
|
|
3883
3813
|
|
|
3884
|
-
void rocksdb_options_set_ratelimiter(rocksdb_options_t
|
|
3814
|
+
void rocksdb_options_set_ratelimiter(rocksdb_options_t* opt,
|
|
3815
|
+
rocksdb_ratelimiter_t* limiter) {
|
|
3885
3816
|
if (limiter) {
|
|
3886
3817
|
opt->rep.rate_limiter = limiter->rep;
|
|
3887
3818
|
}
|
|
@@ -3913,23 +3844,22 @@ int rocksdb_options_get_wal_compression(rocksdb_options_t* opt) {
|
|
|
3913
3844
|
return opt->rep.wal_compression;
|
|
3914
3845
|
}
|
|
3915
3846
|
|
|
3916
|
-
rocksdb_ratelimiter_t* rocksdb_ratelimiter_create(
|
|
3917
|
-
|
|
3918
|
-
|
|
3919
|
-
int32_t fairness) {
|
|
3847
|
+
rocksdb_ratelimiter_t* rocksdb_ratelimiter_create(int64_t rate_bytes_per_sec,
|
|
3848
|
+
int64_t refill_period_us,
|
|
3849
|
+
int32_t fairness) {
|
|
3920
3850
|
rocksdb_ratelimiter_t* rate_limiter = new rocksdb_ratelimiter_t;
|
|
3921
3851
|
rate_limiter->rep.reset(
|
|
3922
|
-
|
|
3923
|
-
refill_period_us, fairness));
|
|
3852
|
+
NewGenericRateLimiter(rate_bytes_per_sec, refill_period_us, fairness));
|
|
3924
3853
|
return rate_limiter;
|
|
3925
3854
|
}
|
|
3926
3855
|
|
|
3927
|
-
void rocksdb_ratelimiter_destroy(rocksdb_ratelimiter_t
|
|
3856
|
+
void rocksdb_ratelimiter_destroy(rocksdb_ratelimiter_t* limiter) {
|
|
3928
3857
|
delete limiter;
|
|
3929
3858
|
}
|
|
3930
3859
|
|
|
3931
|
-
void rocksdb_options_set_row_cache(rocksdb_options_t* opt,
|
|
3932
|
-
|
|
3860
|
+
void rocksdb_options_set_row_cache(rocksdb_options_t* opt,
|
|
3861
|
+
rocksdb_cache_t* cache) {
|
|
3862
|
+
if (cache) {
|
|
3933
3863
|
opt->rep.row_cache = cache->rep;
|
|
3934
3864
|
}
|
|
3935
3865
|
}
|
|
@@ -3958,12 +3888,12 @@ void rocksdb_perfcontext_reset(rocksdb_perfcontext_t* context) {
|
|
|
3958
3888
|
}
|
|
3959
3889
|
|
|
3960
3890
|
char* rocksdb_perfcontext_report(rocksdb_perfcontext_t* context,
|
|
3961
|
-
|
|
3891
|
+
unsigned char exclude_zero_counters) {
|
|
3962
3892
|
return strdup(context->rep->ToString(exclude_zero_counters).c_str());
|
|
3963
3893
|
}
|
|
3964
3894
|
|
|
3965
3895
|
uint64_t rocksdb_perfcontext_metric(rocksdb_perfcontext_t* context,
|
|
3966
|
-
|
|
3896
|
+
int metric) {
|
|
3967
3897
|
PerfContext* rep = context->rep;
|
|
3968
3898
|
switch (metric) {
|
|
3969
3899
|
case rocksdb_user_key_comparison_count:
|
|
@@ -4143,15 +4073,12 @@ table_properties_collectors
|
|
|
4143
4073
|
*/
|
|
4144
4074
|
|
|
4145
4075
|
rocksdb_compactionfilter_t* rocksdb_compactionfilter_create(
|
|
4146
|
-
void* state,
|
|
4147
|
-
|
|
4148
|
-
|
|
4149
|
-
|
|
4150
|
-
|
|
4151
|
-
|
|
4152
|
-
const char* existing_value, size_t value_length,
|
|
4153
|
-
char** new_value, size_t *new_value_length,
|
|
4154
|
-
unsigned char* value_changed),
|
|
4076
|
+
void* state, void (*destructor)(void*),
|
|
4077
|
+
unsigned char (*filter)(void*, int level, const char* key,
|
|
4078
|
+
size_t key_length, const char* existing_value,
|
|
4079
|
+
size_t value_length, char** new_value,
|
|
4080
|
+
size_t* new_value_length,
|
|
4081
|
+
unsigned char* value_changed),
|
|
4155
4082
|
const char* (*name)(void*)) {
|
|
4156
4083
|
rocksdb_compactionfilter_t* result = new rocksdb_compactionfilter_t;
|
|
4157
4084
|
result->state_ = state;
|
|
@@ -4163,8 +4090,7 @@ rocksdb_compactionfilter_t* rocksdb_compactionfilter_create(
|
|
|
4163
4090
|
}
|
|
4164
4091
|
|
|
4165
4092
|
void rocksdb_compactionfilter_set_ignore_snapshots(
|
|
4166
|
-
|
|
4167
|
-
unsigned char whether_ignore) {
|
|
4093
|
+
rocksdb_compactionfilter_t* filter, unsigned char whether_ignore) {
|
|
4168
4094
|
filter->ignore_snapshots_ = whether_ignore;
|
|
4169
4095
|
}
|
|
4170
4096
|
|
|
@@ -4202,12 +4128,9 @@ void rocksdb_compactionfilterfactory_destroy(
|
|
|
4202
4128
|
}
|
|
4203
4129
|
|
|
4204
4130
|
rocksdb_comparator_t* rocksdb_comparator_create(
|
|
4205
|
-
void* state,
|
|
4206
|
-
|
|
4207
|
-
|
|
4208
|
-
void*,
|
|
4209
|
-
const char* a, size_t alen,
|
|
4210
|
-
const char* b, size_t blen),
|
|
4131
|
+
void* state, void (*destructor)(void*),
|
|
4132
|
+
int (*compare)(void*, const char* a, size_t alen, const char* b,
|
|
4133
|
+
size_t blen),
|
|
4211
4134
|
const char* (*name)(void*)) {
|
|
4212
4135
|
rocksdb_comparator_t* result = new rocksdb_comparator_t;
|
|
4213
4136
|
result->state_ = state;
|
|
@@ -4360,13 +4283,10 @@ rocksdb_readoptions_t* rocksdb_readoptions_create() {
|
|
|
4360
4283
|
return new rocksdb_readoptions_t;
|
|
4361
4284
|
}
|
|
4362
4285
|
|
|
4363
|
-
void rocksdb_readoptions_destroy(rocksdb_readoptions_t* opt) {
|
|
4364
|
-
delete opt;
|
|
4365
|
-
}
|
|
4286
|
+
void rocksdb_readoptions_destroy(rocksdb_readoptions_t* opt) { delete opt; }
|
|
4366
4287
|
|
|
4367
|
-
void rocksdb_readoptions_set_verify_checksums(
|
|
4368
|
-
|
|
4369
|
-
unsigned char v) {
|
|
4288
|
+
void rocksdb_readoptions_set_verify_checksums(rocksdb_readoptions_t* opt,
|
|
4289
|
+
unsigned char v) {
|
|
4370
4290
|
opt->rep.verify_checksums = v;
|
|
4371
4291
|
}
|
|
4372
4292
|
|
|
@@ -4375,8 +4295,8 @@ unsigned char rocksdb_readoptions_get_verify_checksums(
|
|
|
4375
4295
|
return opt->rep.verify_checksums;
|
|
4376
4296
|
}
|
|
4377
4297
|
|
|
4378
|
-
void rocksdb_readoptions_set_fill_cache(
|
|
4379
|
-
|
|
4298
|
+
void rocksdb_readoptions_set_fill_cache(rocksdb_readoptions_t* opt,
|
|
4299
|
+
unsigned char v) {
|
|
4380
4300
|
opt->rep.fill_cache = v;
|
|
4381
4301
|
}
|
|
4382
4302
|
|
|
@@ -4384,15 +4304,14 @@ unsigned char rocksdb_readoptions_get_fill_cache(rocksdb_readoptions_t* opt) {
|
|
|
4384
4304
|
return opt->rep.fill_cache;
|
|
4385
4305
|
}
|
|
4386
4306
|
|
|
4387
|
-
void rocksdb_readoptions_set_snapshot(
|
|
4388
|
-
|
|
4389
|
-
const rocksdb_snapshot_t* snap) {
|
|
4307
|
+
void rocksdb_readoptions_set_snapshot(rocksdb_readoptions_t* opt,
|
|
4308
|
+
const rocksdb_snapshot_t* snap) {
|
|
4390
4309
|
opt->rep.snapshot = (snap ? snap->rep : nullptr);
|
|
4391
4310
|
}
|
|
4392
4311
|
|
|
4393
|
-
void rocksdb_readoptions_set_iterate_upper_bound(
|
|
4394
|
-
|
|
4395
|
-
|
|
4312
|
+
void rocksdb_readoptions_set_iterate_upper_bound(rocksdb_readoptions_t* opt,
|
|
4313
|
+
const char* key,
|
|
4314
|
+
size_t keylen) {
|
|
4396
4315
|
if (key == nullptr) {
|
|
4397
4316
|
opt->upper_bound = Slice();
|
|
4398
4317
|
opt->rep.iterate_upper_bound = nullptr;
|
|
@@ -4403,9 +4322,9 @@ void rocksdb_readoptions_set_iterate_upper_bound(
|
|
|
4403
4322
|
}
|
|
4404
4323
|
}
|
|
4405
4324
|
|
|
4406
|
-
void rocksdb_readoptions_set_iterate_lower_bound(
|
|
4407
|
-
|
|
4408
|
-
|
|
4325
|
+
void rocksdb_readoptions_set_iterate_lower_bound(rocksdb_readoptions_t* opt,
|
|
4326
|
+
const char* key,
|
|
4327
|
+
size_t keylen) {
|
|
4409
4328
|
if (key == nullptr) {
|
|
4410
4329
|
opt->lower_bound = Slice();
|
|
4411
4330
|
opt->rep.iterate_lower_bound = nullptr;
|
|
@@ -4415,8 +4334,7 @@ void rocksdb_readoptions_set_iterate_lower_bound(
|
|
|
4415
4334
|
}
|
|
4416
4335
|
}
|
|
4417
4336
|
|
|
4418
|
-
void rocksdb_readoptions_set_read_tier(
|
|
4419
|
-
rocksdb_readoptions_t* opt, int v) {
|
|
4337
|
+
void rocksdb_readoptions_set_read_tier(rocksdb_readoptions_t* opt, int v) {
|
|
4420
4338
|
opt->rep.read_tier = static_cast<ROCKSDB_NAMESPACE::ReadTier>(v);
|
|
4421
4339
|
}
|
|
4422
4340
|
|
|
@@ -4424,8 +4342,8 @@ int rocksdb_readoptions_get_read_tier(rocksdb_readoptions_t* opt) {
|
|
|
4424
4342
|
return static_cast<int>(opt->rep.read_tier);
|
|
4425
4343
|
}
|
|
4426
4344
|
|
|
4427
|
-
void rocksdb_readoptions_set_tailing(
|
|
4428
|
-
|
|
4345
|
+
void rocksdb_readoptions_set_tailing(rocksdb_readoptions_t* opt,
|
|
4346
|
+
unsigned char v) {
|
|
4429
4347
|
opt->rep.tailing = v;
|
|
4430
4348
|
}
|
|
4431
4349
|
|
|
@@ -4433,13 +4351,13 @@ unsigned char rocksdb_readoptions_get_tailing(rocksdb_readoptions_t* opt) {
|
|
|
4433
4351
|
return opt->rep.tailing;
|
|
4434
4352
|
}
|
|
4435
4353
|
|
|
4436
|
-
void rocksdb_readoptions_set_managed(
|
|
4437
|
-
|
|
4354
|
+
void rocksdb_readoptions_set_managed(rocksdb_readoptions_t* opt,
|
|
4355
|
+
unsigned char v) {
|
|
4438
4356
|
opt->rep.managed = v;
|
|
4439
4357
|
}
|
|
4440
4358
|
|
|
4441
|
-
void rocksdb_readoptions_set_readahead_size(
|
|
4442
|
-
|
|
4359
|
+
void rocksdb_readoptions_set_readahead_size(rocksdb_readoptions_t* opt,
|
|
4360
|
+
size_t v) {
|
|
4443
4361
|
opt->rep.readahead_size = v;
|
|
4444
4362
|
}
|
|
4445
4363
|
|
|
@@ -4447,8 +4365,8 @@ size_t rocksdb_readoptions_get_readahead_size(rocksdb_readoptions_t* opt) {
|
|
|
4447
4365
|
return opt->rep.readahead_size;
|
|
4448
4366
|
}
|
|
4449
4367
|
|
|
4450
|
-
void rocksdb_readoptions_set_prefix_same_as_start(
|
|
4451
|
-
|
|
4368
|
+
void rocksdb_readoptions_set_prefix_same_as_start(rocksdb_readoptions_t* opt,
|
|
4369
|
+
unsigned char v) {
|
|
4452
4370
|
opt->rep.prefix_same_as_start = v;
|
|
4453
4371
|
}
|
|
4454
4372
|
|
|
@@ -4477,8 +4395,7 @@ unsigned char rocksdb_readoptions_get_total_order_seek(
|
|
|
4477
4395
|
}
|
|
4478
4396
|
|
|
4479
4397
|
void rocksdb_readoptions_set_max_skippable_internal_keys(
|
|
4480
|
-
rocksdb_readoptions_t* opt,
|
|
4481
|
-
uint64_t v) {
|
|
4398
|
+
rocksdb_readoptions_t* opt, uint64_t v) {
|
|
4482
4399
|
opt->rep.max_skippable_internal_keys = v;
|
|
4483
4400
|
}
|
|
4484
4401
|
|
|
@@ -4497,8 +4414,8 @@ unsigned char rocksdb_readoptions_get_background_purge_on_iterator_cleanup(
|
|
|
4497
4414
|
return opt->rep.background_purge_on_iterator_cleanup;
|
|
4498
4415
|
}
|
|
4499
4416
|
|
|
4500
|
-
void rocksdb_readoptions_set_ignore_range_deletions(
|
|
4501
|
-
|
|
4417
|
+
void rocksdb_readoptions_set_ignore_range_deletions(rocksdb_readoptions_t* opt,
|
|
4418
|
+
unsigned char v) {
|
|
4502
4419
|
opt->rep.ignore_range_deletions = v;
|
|
4503
4420
|
}
|
|
4504
4421
|
|
|
@@ -4552,12 +4469,10 @@ rocksdb_writeoptions_t* rocksdb_writeoptions_create() {
|
|
|
4552
4469
|
return new rocksdb_writeoptions_t;
|
|
4553
4470
|
}
|
|
4554
4471
|
|
|
4555
|
-
void rocksdb_writeoptions_destroy(rocksdb_writeoptions_t* opt) {
|
|
4556
|
-
delete opt;
|
|
4557
|
-
}
|
|
4472
|
+
void rocksdb_writeoptions_destroy(rocksdb_writeoptions_t* opt) { delete opt; }
|
|
4558
4473
|
|
|
4559
|
-
void rocksdb_writeoptions_set_sync(
|
|
4560
|
-
|
|
4474
|
+
void rocksdb_writeoptions_set_sync(rocksdb_writeoptions_t* opt,
|
|
4475
|
+
unsigned char v) {
|
|
4561
4476
|
opt->rep.sync = v;
|
|
4562
4477
|
}
|
|
4563
4478
|
|
|
@@ -4624,7 +4539,8 @@ void rocksdb_compactoptions_destroy(rocksdb_compactoptions_t* opt) {
|
|
|
4624
4539
|
|
|
4625
4540
|
void rocksdb_compactoptions_set_bottommost_level_compaction(
|
|
4626
4541
|
rocksdb_compactoptions_t* opt, unsigned char v) {
|
|
4627
|
-
opt->rep.bottommost_level_compaction =
|
|
4542
|
+
opt->rep.bottommost_level_compaction =
|
|
4543
|
+
static_cast<BottommostLevelCompaction>(v);
|
|
4628
4544
|
}
|
|
4629
4545
|
|
|
4630
4546
|
unsigned char rocksdb_compactoptions_get_bottommost_level_compaction(
|
|
@@ -4676,12 +4592,10 @@ rocksdb_flushoptions_t* rocksdb_flushoptions_create() {
|
|
|
4676
4592
|
return new rocksdb_flushoptions_t;
|
|
4677
4593
|
}
|
|
4678
4594
|
|
|
4679
|
-
void rocksdb_flushoptions_destroy(rocksdb_flushoptions_t* opt) {
|
|
4680
|
-
delete opt;
|
|
4681
|
-
}
|
|
4595
|
+
void rocksdb_flushoptions_destroy(rocksdb_flushoptions_t* opt) { delete opt; }
|
|
4682
4596
|
|
|
4683
|
-
void rocksdb_flushoptions_set_wait(
|
|
4684
|
-
|
|
4597
|
+
void rocksdb_flushoptions_set_wait(rocksdb_flushoptions_t* opt,
|
|
4598
|
+
unsigned char v) {
|
|
4685
4599
|
opt->rep.wait = v;
|
|
4686
4600
|
}
|
|
4687
4601
|
|
|
@@ -4746,9 +4660,7 @@ rocksdb_cache_t* rocksdb_cache_create_lru_opts(
|
|
|
4746
4660
|
return c;
|
|
4747
4661
|
}
|
|
4748
4662
|
|
|
4749
|
-
void rocksdb_cache_destroy(rocksdb_cache_t* cache) {
|
|
4750
|
-
delete cache;
|
|
4751
|
-
}
|
|
4663
|
+
void rocksdb_cache_destroy(rocksdb_cache_t* cache) { delete cache; }
|
|
4752
4664
|
|
|
4753
4665
|
void rocksdb_cache_disown_data(rocksdb_cache_t* cache) {
|
|
4754
4666
|
cache->rep->DisownData();
|
|
@@ -4770,16 +4682,15 @@ size_t rocksdb_cache_get_pinned_usage(rocksdb_cache_t* cache) {
|
|
|
4770
4682
|
return cache->rep->GetPinnedUsage();
|
|
4771
4683
|
}
|
|
4772
4684
|
|
|
4773
|
-
rocksdb_dbpath_t* rocksdb_dbpath_create(const char* path,
|
|
4685
|
+
rocksdb_dbpath_t* rocksdb_dbpath_create(const char* path,
|
|
4686
|
+
uint64_t target_size) {
|
|
4774
4687
|
rocksdb_dbpath_t* result = new rocksdb_dbpath_t;
|
|
4775
4688
|
result->rep.path = std::string(path);
|
|
4776
4689
|
result->rep.target_size = target_size;
|
|
4777
4690
|
return result;
|
|
4778
4691
|
}
|
|
4779
4692
|
|
|
4780
|
-
void rocksdb_dbpath_destroy(rocksdb_dbpath_t* dbpath) {
|
|
4781
|
-
delete dbpath;
|
|
4782
|
-
}
|
|
4693
|
+
void rocksdb_dbpath_destroy(rocksdb_dbpath_t* dbpath) { delete dbpath; }
|
|
4783
4694
|
|
|
4784
4695
|
rocksdb_env_t* rocksdb_create_default_env() {
|
|
4785
4696
|
rocksdb_env_t* result = new rocksdb_env_t;
|
|
@@ -4812,7 +4723,8 @@ int rocksdb_env_get_bottom_priority_background_threads(rocksdb_env_t* env) {
|
|
|
4812
4723
|
return env->rep->GetBackgroundThreads(Env::BOTTOM);
|
|
4813
4724
|
}
|
|
4814
4725
|
|
|
4815
|
-
void rocksdb_env_set_high_priority_background_threads(rocksdb_env_t* env,
|
|
4726
|
+
void rocksdb_env_set_high_priority_background_threads(rocksdb_env_t* env,
|
|
4727
|
+
int n) {
|
|
4816
4728
|
env->rep->SetBackgroundThreads(n, Env::HIGH);
|
|
4817
4729
|
}
|
|
4818
4730
|
|
|
@@ -4837,7 +4749,8 @@ void rocksdb_env_lower_thread_pool_io_priority(rocksdb_env_t* env) {
|
|
|
4837
4749
|
env->rep->LowerThreadPoolIOPriority();
|
|
4838
4750
|
}
|
|
4839
4751
|
|
|
4840
|
-
void rocksdb_env_lower_high_priority_thread_pool_io_priority(
|
|
4752
|
+
void rocksdb_env_lower_high_priority_thread_pool_io_priority(
|
|
4753
|
+
rocksdb_env_t* env) {
|
|
4841
4754
|
env->rep->LowerThreadPoolIOPriority(Env::HIGH);
|
|
4842
4755
|
}
|
|
4843
4756
|
|
|
@@ -4845,7 +4758,8 @@ void rocksdb_env_lower_thread_pool_cpu_priority(rocksdb_env_t* env) {
|
|
|
4845
4758
|
env->rep->LowerThreadPoolCPUPriority();
|
|
4846
4759
|
}
|
|
4847
4760
|
|
|
4848
|
-
void rocksdb_env_lower_high_priority_thread_pool_cpu_priority(
|
|
4761
|
+
void rocksdb_env_lower_high_priority_thread_pool_cpu_priority(
|
|
4762
|
+
rocksdb_env_t* env) {
|
|
4849
4763
|
env->rep->LowerThreadPoolCPUPriority(Env::HIGH);
|
|
4850
4764
|
}
|
|
4851
4765
|
|
|
@@ -5017,18 +4931,11 @@ void rocksdb_try_catch_up_with_primary(rocksdb_t* db, char** errptr) {
|
|
|
5017
4931
|
}
|
|
5018
4932
|
|
|
5019
4933
|
rocksdb_slicetransform_t* rocksdb_slicetransform_create(
|
|
5020
|
-
void* state,
|
|
5021
|
-
|
|
5022
|
-
|
|
5023
|
-
|
|
5024
|
-
|
|
5025
|
-
size_t* dst_length),
|
|
5026
|
-
unsigned char (*in_domain)(
|
|
5027
|
-
void*,
|
|
5028
|
-
const char* key, size_t length),
|
|
5029
|
-
unsigned char (*in_range)(
|
|
5030
|
-
void*,
|
|
5031
|
-
const char* key, size_t length),
|
|
4934
|
+
void* state, void (*destructor)(void*),
|
|
4935
|
+
char* (*transform)(void*, const char* key, size_t length,
|
|
4936
|
+
size_t* dst_length),
|
|
4937
|
+
unsigned char (*in_domain)(void*, const char* key, size_t length),
|
|
4938
|
+
unsigned char (*in_range)(void*, const char* key, size_t length),
|
|
5032
4939
|
const char* (*name)(void*)) {
|
|
5033
4940
|
rocksdb_slicetransform_t* result = new rocksdb_slicetransform_t;
|
|
5034
4941
|
result->state_ = state;
|
|
@@ -5040,9 +4947,7 @@ rocksdb_slicetransform_t* rocksdb_slicetransform_create(
|
|
|
5040
4947
|
return result;
|
|
5041
4948
|
}
|
|
5042
4949
|
|
|
5043
|
-
void rocksdb_slicetransform_destroy(rocksdb_slicetransform_t* st) {
|
|
5044
|
-
delete st;
|
|
5045
|
-
}
|
|
4950
|
+
void rocksdb_slicetransform_destroy(rocksdb_slicetransform_t* st) { delete st; }
|
|
5046
4951
|
|
|
5047
4952
|
struct SliceTransformWrapper : public rocksdb_slicetransform_t {
|
|
5048
4953
|
const SliceTransform* rep_;
|
|
@@ -5052,14 +4957,13 @@ struct SliceTransformWrapper : public rocksdb_slicetransform_t {
|
|
|
5052
4957
|
Slice Transform(const Slice& src) const override {
|
|
5053
4958
|
return rep_->Transform(src);
|
|
5054
4959
|
}
|
|
5055
|
-
bool InDomain(const Slice& src) const override {
|
|
5056
|
-
return rep_->InDomain(src);
|
|
5057
|
-
}
|
|
4960
|
+
bool InDomain(const Slice& src) const override { return rep_->InDomain(src); }
|
|
5058
4961
|
bool InRange(const Slice& src) const override { return rep_->InRange(src); }
|
|
5059
|
-
static void DoNothing(void*) {
|
|
4962
|
+
static void DoNothing(void*) {}
|
|
5060
4963
|
};
|
|
5061
4964
|
|
|
5062
|
-
rocksdb_slicetransform_t* rocksdb_slicetransform_create_fixed_prefix(
|
|
4965
|
+
rocksdb_slicetransform_t* rocksdb_slicetransform_create_fixed_prefix(
|
|
4966
|
+
size_t prefixLen) {
|
|
5063
4967
|
SliceTransformWrapper* wrapper = new SliceTransformWrapper;
|
|
5064
4968
|
wrapper->rep_ = ROCKSDB_NAMESPACE::NewFixedPrefixTransform(prefixLen);
|
|
5065
4969
|
wrapper->state_ = nullptr;
|
|
@@ -5075,14 +4979,16 @@ rocksdb_slicetransform_t* rocksdb_slicetransform_create_noop() {
|
|
|
5075
4979
|
return wrapper;
|
|
5076
4980
|
}
|
|
5077
4981
|
|
|
5078
|
-
rocksdb_universal_compaction_options_t*
|
|
5079
|
-
|
|
4982
|
+
rocksdb_universal_compaction_options_t*
|
|
4983
|
+
rocksdb_universal_compaction_options_create() {
|
|
4984
|
+
rocksdb_universal_compaction_options_t* result =
|
|
4985
|
+
new rocksdb_universal_compaction_options_t;
|
|
5080
4986
|
result->rep = new ROCKSDB_NAMESPACE::CompactionOptionsUniversal;
|
|
5081
4987
|
return result;
|
|
5082
4988
|
}
|
|
5083
4989
|
|
|
5084
4990
|
void rocksdb_universal_compaction_options_set_size_ratio(
|
|
5085
|
-
|
|
4991
|
+
rocksdb_universal_compaction_options_t* uco, int ratio) {
|
|
5086
4992
|
uco->rep->size_ratio = ratio;
|
|
5087
4993
|
}
|
|
5088
4994
|
|
|
@@ -5092,7 +4998,7 @@ int rocksdb_universal_compaction_options_get_size_ratio(
|
|
|
5092
4998
|
}
|
|
5093
4999
|
|
|
5094
5000
|
void rocksdb_universal_compaction_options_set_min_merge_width(
|
|
5095
|
-
|
|
5001
|
+
rocksdb_universal_compaction_options_t* uco, int w) {
|
|
5096
5002
|
uco->rep->min_merge_width = w;
|
|
5097
5003
|
}
|
|
5098
5004
|
|
|
@@ -5102,7 +5008,7 @@ int rocksdb_universal_compaction_options_get_min_merge_width(
|
|
|
5102
5008
|
}
|
|
5103
5009
|
|
|
5104
5010
|
void rocksdb_universal_compaction_options_set_max_merge_width(
|
|
5105
|
-
|
|
5011
|
+
rocksdb_universal_compaction_options_t* uco, int w) {
|
|
5106
5012
|
uco->rep->max_merge_width = w;
|
|
5107
5013
|
}
|
|
5108
5014
|
|
|
@@ -5112,7 +5018,7 @@ int rocksdb_universal_compaction_options_get_max_merge_width(
|
|
|
5112
5018
|
}
|
|
5113
5019
|
|
|
5114
5020
|
void rocksdb_universal_compaction_options_set_max_size_amplification_percent(
|
|
5115
|
-
|
|
5021
|
+
rocksdb_universal_compaction_options_t* uco, int p) {
|
|
5116
5022
|
uco->rep->max_size_amplification_percent = p;
|
|
5117
5023
|
}
|
|
5118
5024
|
|
|
@@ -5122,7 +5028,7 @@ int rocksdb_universal_compaction_options_get_max_size_amplification_percent(
|
|
|
5122
5028
|
}
|
|
5123
5029
|
|
|
5124
5030
|
void rocksdb_universal_compaction_options_set_compression_size_percent(
|
|
5125
|
-
|
|
5031
|
+
rocksdb_universal_compaction_options_t* uco, int p) {
|
|
5126
5032
|
uco->rep->compression_size_percent = p;
|
|
5127
5033
|
}
|
|
5128
5034
|
|
|
@@ -5132,7 +5038,7 @@ int rocksdb_universal_compaction_options_get_compression_size_percent(
|
|
|
5132
5038
|
}
|
|
5133
5039
|
|
|
5134
5040
|
void rocksdb_universal_compaction_options_set_stop_style(
|
|
5135
|
-
|
|
5041
|
+
rocksdb_universal_compaction_options_t* uco, int style) {
|
|
5136
5042
|
uco->rep->stop_style =
|
|
5137
5043
|
static_cast<ROCKSDB_NAMESPACE::CompactionStopStyle>(style);
|
|
5138
5044
|
}
|
|
@@ -5143,14 +5049,15 @@ int rocksdb_universal_compaction_options_get_stop_style(
|
|
|
5143
5049
|
}
|
|
5144
5050
|
|
|
5145
5051
|
void rocksdb_universal_compaction_options_destroy(
|
|
5146
|
-
|
|
5052
|
+
rocksdb_universal_compaction_options_t* uco) {
|
|
5147
5053
|
delete uco->rep;
|
|
5148
5054
|
delete uco;
|
|
5149
5055
|
}
|
|
5150
5056
|
|
|
5151
5057
|
rocksdb_fifo_compaction_options_t* rocksdb_fifo_compaction_options_create() {
|
|
5152
|
-
rocksdb_fifo_compaction_options_t* result =
|
|
5153
|
-
|
|
5058
|
+
rocksdb_fifo_compaction_options_t* result =
|
|
5059
|
+
new rocksdb_fifo_compaction_options_t;
|
|
5060
|
+
result->rep = CompactionOptionsFIFO();
|
|
5154
5061
|
return result;
|
|
5155
5062
|
}
|
|
5156
5063
|
|
|
@@ -5169,7 +5076,8 @@ void rocksdb_fifo_compaction_options_destroy(
|
|
|
5169
5076
|
delete fifo_opts;
|
|
5170
5077
|
}
|
|
5171
5078
|
|
|
5172
|
-
void rocksdb_options_set_min_level_to_compress(rocksdb_options_t* opt,
|
|
5079
|
+
void rocksdb_options_set_min_level_to_compress(rocksdb_options_t* opt,
|
|
5080
|
+
int level) {
|
|
5173
5081
|
if (level >= 0) {
|
|
5174
5082
|
assert(level <= opt->rep.num_levels);
|
|
5175
5083
|
opt->rep.compression_per_level.resize(opt->rep.num_levels);
|
|
@@ -5182,8 +5090,7 @@ void rocksdb_options_set_min_level_to_compress(rocksdb_options_t* opt, int level
|
|
|
5182
5090
|
}
|
|
5183
5091
|
}
|
|
5184
5092
|
|
|
5185
|
-
int rocksdb_livefiles_count(
|
|
5186
|
-
const rocksdb_livefiles_t* lf) {
|
|
5093
|
+
int rocksdb_livefiles_count(const rocksdb_livefiles_t* lf) {
|
|
5187
5094
|
return static_cast<int>(lf->rep.size());
|
|
5188
5095
|
}
|
|
5189
5096
|
|
|
@@ -5192,54 +5099,39 @@ const char* rocksdb_livefiles_column_family_name(const rocksdb_livefiles_t* lf,
|
|
|
5192
5099
|
return lf->rep[index].column_family_name.c_str();
|
|
5193
5100
|
}
|
|
5194
5101
|
|
|
5195
|
-
const char* rocksdb_livefiles_name(
|
|
5196
|
-
const rocksdb_livefiles_t* lf,
|
|
5197
|
-
int index) {
|
|
5102
|
+
const char* rocksdb_livefiles_name(const rocksdb_livefiles_t* lf, int index) {
|
|
5198
5103
|
return lf->rep[index].name.c_str();
|
|
5199
5104
|
}
|
|
5200
5105
|
|
|
5201
|
-
int rocksdb_livefiles_level(
|
|
5202
|
-
const rocksdb_livefiles_t* lf,
|
|
5203
|
-
int index) {
|
|
5106
|
+
int rocksdb_livefiles_level(const rocksdb_livefiles_t* lf, int index) {
|
|
5204
5107
|
return lf->rep[index].level;
|
|
5205
5108
|
}
|
|
5206
5109
|
|
|
5207
|
-
size_t rocksdb_livefiles_size(
|
|
5208
|
-
const rocksdb_livefiles_t* lf,
|
|
5209
|
-
int index) {
|
|
5110
|
+
size_t rocksdb_livefiles_size(const rocksdb_livefiles_t* lf, int index) {
|
|
5210
5111
|
return lf->rep[index].size;
|
|
5211
5112
|
}
|
|
5212
5113
|
|
|
5213
|
-
const char* rocksdb_livefiles_smallestkey(
|
|
5214
|
-
|
|
5215
|
-
int index,
|
|
5216
|
-
size_t* size) {
|
|
5114
|
+
const char* rocksdb_livefiles_smallestkey(const rocksdb_livefiles_t* lf,
|
|
5115
|
+
int index, size_t* size) {
|
|
5217
5116
|
*size = lf->rep[index].smallestkey.size();
|
|
5218
5117
|
return lf->rep[index].smallestkey.data();
|
|
5219
5118
|
}
|
|
5220
5119
|
|
|
5221
|
-
const char* rocksdb_livefiles_largestkey(
|
|
5222
|
-
|
|
5223
|
-
int index,
|
|
5224
|
-
size_t* size) {
|
|
5120
|
+
const char* rocksdb_livefiles_largestkey(const rocksdb_livefiles_t* lf,
|
|
5121
|
+
int index, size_t* size) {
|
|
5225
5122
|
*size = lf->rep[index].largestkey.size();
|
|
5226
5123
|
return lf->rep[index].largestkey.data();
|
|
5227
5124
|
}
|
|
5228
5125
|
|
|
5229
|
-
uint64_t rocksdb_livefiles_entries(
|
|
5230
|
-
const rocksdb_livefiles_t* lf,
|
|
5231
|
-
int index) {
|
|
5126
|
+
uint64_t rocksdb_livefiles_entries(const rocksdb_livefiles_t* lf, int index) {
|
|
5232
5127
|
return lf->rep[index].num_entries;
|
|
5233
5128
|
}
|
|
5234
5129
|
|
|
5235
|
-
uint64_t rocksdb_livefiles_deletions(
|
|
5236
|
-
const rocksdb_livefiles_t* lf,
|
|
5237
|
-
int index) {
|
|
5130
|
+
uint64_t rocksdb_livefiles_deletions(const rocksdb_livefiles_t* lf, int index) {
|
|
5238
5131
|
return lf->rep[index].num_deletions;
|
|
5239
5132
|
}
|
|
5240
5133
|
|
|
5241
|
-
extern void rocksdb_livefiles_destroy(
|
|
5242
|
-
const rocksdb_livefiles_t* lf) {
|
|
5134
|
+
extern void rocksdb_livefiles_destroy(const rocksdb_livefiles_t* lf) {
|
|
5243
5135
|
delete lf;
|
|
5244
5136
|
}
|
|
5245
5137
|
|
|
@@ -5394,7 +5286,8 @@ rocksdb_transactiondb_options_t* rocksdb_transactiondb_options_create() {
|
|
|
5394
5286
|
return new rocksdb_transactiondb_options_t;
|
|
5395
5287
|
}
|
|
5396
5288
|
|
|
5397
|
-
void rocksdb_transactiondb_options_destroy(
|
|
5289
|
+
void rocksdb_transactiondb_options_destroy(
|
|
5290
|
+
rocksdb_transactiondb_options_t* opt) {
|
|
5398
5291
|
delete opt;
|
|
5399
5292
|
}
|
|
5400
5293
|
|
|
@@ -5600,7 +5493,7 @@ rocksdb_transaction_t* rocksdb_transaction_begin(
|
|
|
5600
5493
|
return result;
|
|
5601
5494
|
}
|
|
5602
5495
|
old_txn->rep = txn_db->rep->BeginTransaction(write_options->rep,
|
|
5603
|
-
|
|
5496
|
+
txn_options->rep, old_txn->rep);
|
|
5604
5497
|
return old_txn;
|
|
5605
5498
|
}
|
|
5606
5499
|
|
|
@@ -5672,7 +5565,8 @@ void rocksdb_transaction_set_savepoint(rocksdb_transaction_t* txn) {
|
|
|
5672
5565
|
txn->rep->SetSavePoint();
|
|
5673
5566
|
}
|
|
5674
5567
|
|
|
5675
|
-
void rocksdb_transaction_rollback_to_savepoint(rocksdb_transaction_t* txn,
|
|
5568
|
+
void rocksdb_transaction_rollback_to_savepoint(rocksdb_transaction_t* txn,
|
|
5569
|
+
char** errptr) {
|
|
5676
5570
|
SaveError(errptr, txn->rep->RollbackToSavePoint());
|
|
5677
5571
|
}
|
|
5678
5572
|
|
|
@@ -5904,12 +5798,10 @@ void rocksdb_transaction_multi_get_cf(
|
|
|
5904
5798
|
}
|
|
5905
5799
|
|
|
5906
5800
|
// Read a key outside a transaction
|
|
5907
|
-
char* rocksdb_transactiondb_get(
|
|
5908
|
-
|
|
5909
|
-
|
|
5910
|
-
|
|
5911
|
-
size_t* vlen,
|
|
5912
|
-
char** errptr){
|
|
5801
|
+
char* rocksdb_transactiondb_get(rocksdb_transactiondb_t* txn_db,
|
|
5802
|
+
const rocksdb_readoptions_t* options,
|
|
5803
|
+
const char* key, size_t klen, size_t* vlen,
|
|
5804
|
+
char** errptr) {
|
|
5913
5805
|
char* result = nullptr;
|
|
5914
5806
|
std::string tmp;
|
|
5915
5807
|
Status s = txn_db->rep->Get(options->rep, Slice(key, klen), &tmp);
|
|
@@ -6086,11 +5978,9 @@ void rocksdb_transactiondb_put_cf(rocksdb_transactiondb_t* txn_db,
|
|
|
6086
5978
|
}
|
|
6087
5979
|
|
|
6088
5980
|
// Write batch into transaction db
|
|
6089
|
-
void rocksdb_transactiondb_write(
|
|
6090
|
-
|
|
6091
|
-
|
|
6092
|
-
rocksdb_writebatch_t* batch,
|
|
6093
|
-
char** errptr) {
|
|
5981
|
+
void rocksdb_transactiondb_write(rocksdb_transactiondb_t* db,
|
|
5982
|
+
const rocksdb_writeoptions_t* options,
|
|
5983
|
+
rocksdb_writebatch_t* batch, char** errptr) {
|
|
6094
5984
|
SaveError(errptr, db->rep->Write(options->rep, &batch->rep));
|
|
6095
5985
|
}
|
|
6096
5986
|
|
|
@@ -6411,7 +6301,6 @@ struct rocksdb_memory_usage_t {
|
|
|
6411
6301
|
// estimates amount of memory occupied by consumers (dbs and caches)
|
|
6412
6302
|
rocksdb_memory_usage_t* rocksdb_approximate_memory_usage_create(
|
|
6413
6303
|
rocksdb_memory_consumers_t* consumers, char** errptr) {
|
|
6414
|
-
|
|
6415
6304
|
vector<DB*> dbs;
|
|
6416
6305
|
for (auto db : consumers->dbs) {
|
|
6417
6306
|
dbs.push_back(db->rep);
|
|
@@ -6433,7 +6322,8 @@ rocksdb_memory_usage_t* rocksdb_approximate_memory_usage_create(
|
|
|
6433
6322
|
auto result = new rocksdb_memory_usage_t;
|
|
6434
6323
|
result->mem_table_total = usage_by_type[MemoryUtil::kMemTableTotal];
|
|
6435
6324
|
result->mem_table_unflushed = usage_by_type[MemoryUtil::kMemTableUnFlushed];
|
|
6436
|
-
result->mem_table_readers_total =
|
|
6325
|
+
result->mem_table_readers_total =
|
|
6326
|
+
usage_by_type[MemoryUtil::kTableReadersTotal];
|
|
6437
6327
|
result->cache_total = usage_by_type[MemoryUtil::kCacheTotal];
|
|
6438
6328
|
return result;
|
|
6439
6329
|
}
|