@nxtedition/rocksdb 13.5.7 → 13.5.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/binding.cc +248 -70
- package/binding.gyp +2 -2
- package/deps/rocksdb/rocksdb/BUCK +12 -0
- package/deps/rocksdb/rocksdb/CMakeLists.txt +7 -0
- package/deps/rocksdb/rocksdb/Makefile +28 -23
- package/deps/rocksdb/rocksdb/cache/cache.cc +0 -1
- package/deps/rocksdb/rocksdb/cache/cache_bench_tool.cc +1 -2
- package/deps/rocksdb/rocksdb/cache/compressed_secondary_cache.cc +43 -39
- package/deps/rocksdb/rocksdb/cache/compressed_secondary_cache.h +2 -0
- package/deps/rocksdb/rocksdb/cache/compressed_secondary_cache_test.cc +0 -1
- package/deps/rocksdb/rocksdb/cache/lru_cache.cc +2 -3
- package/deps/rocksdb/rocksdb/cache/lru_cache_test.cc +2 -2
- package/deps/rocksdb/rocksdb/cache/secondary_cache.cc +1 -3
- package/deps/rocksdb/rocksdb/cache/secondary_cache_adapter.cc +11 -1
- package/deps/rocksdb/rocksdb/cache/tiered_secondary_cache_test.cc +13 -5
- package/deps/rocksdb/rocksdb/crash_test.mk +61 -15
- package/deps/rocksdb/rocksdb/db/arena_wrapped_db_iter.cc +136 -45
- package/deps/rocksdb/rocksdb/db/arena_wrapped_db_iter.h +34 -16
- package/deps/rocksdb/rocksdb/db/blob/blob_file_builder.cc +10 -7
- package/deps/rocksdb/rocksdb/db/blob/blob_file_builder_test.cc +1 -2
- package/deps/rocksdb/rocksdb/db/blob/blob_file_meta.h +1 -0
- package/deps/rocksdb/rocksdb/db/blob/blob_file_reader.cc +12 -9
- package/deps/rocksdb/rocksdb/db/blob/blob_file_reader_test.cc +3 -4
- package/deps/rocksdb/rocksdb/db/blob/blob_source.cc +2 -2
- package/deps/rocksdb/rocksdb/db/blob/blob_source_test.cc +3 -4
- package/deps/rocksdb/rocksdb/db/builder.cc +22 -8
- package/deps/rocksdb/rocksdb/db/builder.h +5 -4
- package/deps/rocksdb/rocksdb/db/c.cc +556 -15
- package/deps/rocksdb/rocksdb/db/c_test.c +133 -12
- package/deps/rocksdb/rocksdb/db/column_family.cc +114 -50
- package/deps/rocksdb/rocksdb/db/column_family.h +53 -36
- package/deps/rocksdb/rocksdb/db/column_family_test.cc +6 -6
- package/deps/rocksdb/rocksdb/db/compact_files_test.cc +0 -1
- package/deps/rocksdb/rocksdb/db/compaction/compaction.cc +95 -70
- package/deps/rocksdb/rocksdb/db/compaction/compaction.h +71 -51
- package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator.cc +7 -86
- package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator.h +26 -68
- package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator_test.cc +0 -122
- package/deps/rocksdb/rocksdb/db/compaction/compaction_job.cc +453 -258
- package/deps/rocksdb/rocksdb/db/compaction/compaction_job.h +117 -92
- package/deps/rocksdb/rocksdb/db/compaction/compaction_job_stats_test.cc +0 -1
- package/deps/rocksdb/rocksdb/db/compaction/compaction_job_test.cc +38 -38
- package/deps/rocksdb/rocksdb/db/compaction/compaction_outputs.cc +24 -17
- package/deps/rocksdb/rocksdb/db/compaction/compaction_outputs.h +34 -45
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker.cc +32 -31
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker.h +12 -3
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_fifo.cc +1 -1
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_fifo.h +2 -1
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_level.cc +10 -10
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_level.h +2 -1
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_test.cc +82 -34
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_universal.cc +267 -179
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_universal.h +4 -1
- package/deps/rocksdb/rocksdb/db/compaction/compaction_service_job.cc +273 -89
- package/deps/rocksdb/rocksdb/db/compaction/compaction_service_test.cc +300 -14
- package/deps/rocksdb/rocksdb/db/compaction/compaction_state.cc +4 -4
- package/deps/rocksdb/rocksdb/db/compaction/compaction_state.h +2 -2
- package/deps/rocksdb/rocksdb/db/compaction/subcompaction_state.cc +28 -23
- package/deps/rocksdb/rocksdb/db/compaction/subcompaction_state.h +69 -51
- package/deps/rocksdb/rocksdb/db/compaction/tiered_compaction_test.cc +522 -245
- package/deps/rocksdb/rocksdb/db/convenience.cc +15 -4
- package/deps/rocksdb/rocksdb/db/corruption_test.cc +1 -3
- package/deps/rocksdb/rocksdb/db/cuckoo_table_db_test.cc +0 -2
- package/deps/rocksdb/rocksdb/db/db_basic_test.cc +196 -17
- package/deps/rocksdb/rocksdb/db/db_block_cache_test.cc +74 -62
- package/deps/rocksdb/rocksdb/db/db_bloom_filter_test.cc +48 -0
- package/deps/rocksdb/rocksdb/db/db_compaction_test.cc +682 -250
- package/deps/rocksdb/rocksdb/db/db_dynamic_level_test.cc +0 -1
- package/deps/rocksdb/rocksdb/db/db_encryption_test.cc +3 -4
- package/deps/rocksdb/rocksdb/db/db_filesnapshot.cc +11 -16
- package/deps/rocksdb/rocksdb/db/db_flush_test.cc +57 -0
- package/deps/rocksdb/rocksdb/db/db_impl/compacted_db_impl.cc +2 -2
- package/deps/rocksdb/rocksdb/db/db_impl/compacted_db_impl.h +1 -1
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl.cc +540 -490
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl.h +347 -188
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_compaction_flush.cc +584 -217
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_debug.cc +13 -9
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_experimental.cc +5 -7
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_files.cc +40 -36
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_follower.cc +1 -3
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_open.cc +751 -372
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_readonly.cc +35 -32
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_readonly.h +24 -2
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_secondary.cc +125 -63
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_secondary.h +2 -2
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_write.cc +311 -196
- package/deps/rocksdb/rocksdb/db/db_io_failure_test.cc +15 -5
- package/deps/rocksdb/rocksdb/db/db_iter.cc +42 -29
- package/deps/rocksdb/rocksdb/db/db_iter.h +96 -31
- package/deps/rocksdb/rocksdb/db/db_iter_stress_test.cc +3 -4
- package/deps/rocksdb/rocksdb/db/db_iter_test.cc +168 -228
- package/deps/rocksdb/rocksdb/db/db_iterator_test.cc +454 -0
- package/deps/rocksdb/rocksdb/db/db_kv_checksum_test.cc +8 -8
- package/deps/rocksdb/rocksdb/db/db_log_iter_test.cc +0 -1
- package/deps/rocksdb/rocksdb/db/db_memtable_test.cc +90 -0
- package/deps/rocksdb/rocksdb/db/db_merge_operand_test.cc +60 -2
- package/deps/rocksdb/rocksdb/db/db_merge_operator_test.cc +7 -3
- package/deps/rocksdb/rocksdb/db/db_options_test.cc +85 -27
- package/deps/rocksdb/rocksdb/db/db_properties_test.cc +3 -1
- package/deps/rocksdb/rocksdb/db/db_rate_limiter_test.cc +0 -2
- package/deps/rocksdb/rocksdb/db/db_secondary_test.cc +114 -2
- package/deps/rocksdb/rocksdb/db/db_sst_test.cc +0 -1
- package/deps/rocksdb/rocksdb/db/db_statistics_test.cc +0 -1
- package/deps/rocksdb/rocksdb/db/db_table_properties_test.cc +51 -3
- package/deps/rocksdb/rocksdb/db/db_tailing_iter_test.cc +0 -1
- package/deps/rocksdb/rocksdb/db/db_test.cc +325 -18
- package/deps/rocksdb/rocksdb/db/db_test2.cc +644 -20
- package/deps/rocksdb/rocksdb/db/db_test_util.cc +14 -6
- package/deps/rocksdb/rocksdb/db/db_test_util.h +9 -0
- package/deps/rocksdb/rocksdb/db/db_universal_compaction_test.cc +64 -45
- package/deps/rocksdb/rocksdb/db/db_wal_test.cc +203 -14
- package/deps/rocksdb/rocksdb/db/db_with_timestamp_basic_test.cc +259 -30
- package/deps/rocksdb/rocksdb/db/db_write_buffer_manager_test.cc +0 -1
- package/deps/rocksdb/rocksdb/db/db_write_test.cc +75 -1
- package/deps/rocksdb/rocksdb/db/dbformat.h +70 -6
- package/deps/rocksdb/rocksdb/db/deletefile_test.cc +0 -190
- package/deps/rocksdb/rocksdb/db/error_handler.cc +22 -7
- package/deps/rocksdb/rocksdb/db/error_handler.h +16 -1
- package/deps/rocksdb/rocksdb/db/event_helpers.cc +41 -26
- package/deps/rocksdb/rocksdb/db/experimental.cc +4 -3
- package/deps/rocksdb/rocksdb/db/external_sst_file_basic_test.cc +464 -78
- package/deps/rocksdb/rocksdb/db/external_sst_file_ingestion_job.cc +166 -69
- package/deps/rocksdb/rocksdb/db/external_sst_file_ingestion_job.h +54 -25
- package/deps/rocksdb/rocksdb/db/external_sst_file_test.cc +1 -3
- package/deps/rocksdb/rocksdb/db/flush_job.cc +98 -81
- package/deps/rocksdb/rocksdb/db/flush_job.h +4 -9
- package/deps/rocksdb/rocksdb/db/flush_job_test.cc +80 -84
- package/deps/rocksdb/rocksdb/db/forward_iterator.cc +1 -1
- package/deps/rocksdb/rocksdb/db/forward_iterator.h +2 -2
- package/deps/rocksdb/rocksdb/db/import_column_family_job.cc +12 -19
- package/deps/rocksdb/rocksdb/db/import_column_family_test.cc +0 -2
- package/deps/rocksdb/rocksdb/db/internal_stats.cc +41 -15
- package/deps/rocksdb/rocksdb/db/internal_stats.h +63 -52
- package/deps/rocksdb/rocksdb/db/job_context.h +59 -24
- package/deps/rocksdb/rocksdb/db/listener_test.cc +69 -10
- package/deps/rocksdb/rocksdb/db/log_format.h +11 -2
- package/deps/rocksdb/rocksdb/db/log_reader.cc +147 -34
- package/deps/rocksdb/rocksdb/db/log_reader.h +40 -11
- package/deps/rocksdb/rocksdb/db/log_test.cc +16 -3
- package/deps/rocksdb/rocksdb/db/log_writer.cc +102 -55
- package/deps/rocksdb/rocksdb/db/log_writer.h +21 -2
- package/deps/rocksdb/rocksdb/db/malloc_stats.h +0 -2
- package/deps/rocksdb/rocksdb/db/memtable.cc +16 -47
- package/deps/rocksdb/rocksdb/db/memtable.h +76 -12
- package/deps/rocksdb/rocksdb/db/memtable_list.cc +23 -20
- package/deps/rocksdb/rocksdb/db/memtable_list.h +9 -11
- package/deps/rocksdb/rocksdb/db/memtable_list_test.cc +18 -37
- package/deps/rocksdb/rocksdb/db/merge_context.h +2 -1
- package/deps/rocksdb/rocksdb/db/merge_test.cc +8 -0
- package/deps/rocksdb/rocksdb/db/obsolete_files_test.cc +3 -5
- package/deps/rocksdb/rocksdb/db/periodic_task_scheduler.cc +15 -7
- package/deps/rocksdb/rocksdb/db/periodic_task_scheduler.h +6 -3
- package/deps/rocksdb/rocksdb/db/periodic_task_scheduler_test.cc +22 -4
- package/deps/rocksdb/rocksdb/db/plain_table_db_test.cc +41 -1
- package/deps/rocksdb/rocksdb/db/prefix_test.cc +0 -1
- package/deps/rocksdb/rocksdb/db/repair.cc +29 -34
- package/deps/rocksdb/rocksdb/db/repair_test.cc +0 -1
- package/deps/rocksdb/rocksdb/db/seqno_time_test.cc +14 -15
- package/deps/rocksdb/rocksdb/db/seqno_to_time_mapping.cc +1 -3
- package/deps/rocksdb/rocksdb/db/seqno_to_time_mapping.h +47 -1
- package/deps/rocksdb/rocksdb/db/table_cache.cc +3 -3
- package/deps/rocksdb/rocksdb/db/transaction_log_impl.cc +1 -3
- package/deps/rocksdb/rocksdb/db/transaction_log_impl.h +2 -1
- package/deps/rocksdb/rocksdb/db/version_builder.cc +2 -2
- package/deps/rocksdb/rocksdb/db/version_edit.cc +8 -37
- package/deps/rocksdb/rocksdb/db/version_edit.h +32 -1
- package/deps/rocksdb/rocksdb/db/version_edit_handler.cc +26 -18
- package/deps/rocksdb/rocksdb/db/version_edit_handler.h +7 -5
- package/deps/rocksdb/rocksdb/db/version_set.cc +282 -197
- package/deps/rocksdb/rocksdb/db/version_set.h +54 -57
- package/deps/rocksdb/rocksdb/db/version_set_test.cc +28 -35
- package/deps/rocksdb/rocksdb/db/version_util.h +2 -3
- package/deps/rocksdb/rocksdb/db/wal_manager.cc +3 -2
- package/deps/rocksdb/rocksdb/db/wal_manager.h +0 -1
- package/deps/rocksdb/rocksdb/db/wal_manager_test.cc +0 -1
- package/deps/rocksdb/rocksdb/db/wide/wide_columns.cc +1 -0
- package/deps/rocksdb/rocksdb/db/write_batch.cc +22 -8
- package/deps/rocksdb/rocksdb/db/write_batch_internal.h +5 -4
- package/deps/rocksdb/rocksdb/db/write_batch_test.cc +7 -6
- package/deps/rocksdb/rocksdb/db/write_callback_test.cc +3 -4
- package/deps/rocksdb/rocksdb/db/write_thread.h +3 -3
- package/deps/rocksdb/rocksdb/db_stress_tool/cf_consistency_stress.cc +13 -5
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_common.h +9 -2
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_compaction_service.h +39 -0
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_compression_manager.h +65 -0
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_gflags.cc +45 -22
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_listener.h +7 -4
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_shared_state.h +22 -5
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_table_properties_collector.h +28 -3
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_test_base.cc +143 -38
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_test_base.h +4 -3
- package/deps/rocksdb/rocksdb/db_stress_tool/expected_state.cc +80 -32
- package/deps/rocksdb/rocksdb/db_stress_tool/expected_state.h +51 -2
- package/deps/rocksdb/rocksdb/db_stress_tool/multi_ops_txns_stress.cc +23 -1
- package/deps/rocksdb/rocksdb/db_stress_tool/no_batched_ops_stress.cc +305 -15
- package/deps/rocksdb/rocksdb/env/env.cc +32 -2
- package/deps/rocksdb/rocksdb/env/env_encryption.cc +0 -2
- package/deps/rocksdb/rocksdb/env/env_encryption_ctr.h +2 -4
- package/deps/rocksdb/rocksdb/env/env_posix.cc +4 -2
- package/deps/rocksdb/rocksdb/env/env_test.cc +0 -1
- package/deps/rocksdb/rocksdb/env/fs_posix.cc +20 -11
- package/deps/rocksdb/rocksdb/env/fs_readonly.h +0 -2
- package/deps/rocksdb/rocksdb/env/fs_remap.cc +0 -2
- package/deps/rocksdb/rocksdb/env/fs_remap.h +0 -2
- package/deps/rocksdb/rocksdb/env/io_posix.cc +6 -4
- package/deps/rocksdb/rocksdb/env/io_posix.h +3 -2
- package/deps/rocksdb/rocksdb/env/mock_env.cc +0 -1
- package/deps/rocksdb/rocksdb/file/delete_scheduler.cc +2 -2
- package/deps/rocksdb/rocksdb/file/delete_scheduler.h +0 -2
- package/deps/rocksdb/rocksdb/file/delete_scheduler_test.cc +0 -2
- package/deps/rocksdb/rocksdb/file/file_prefetch_buffer.cc +30 -21
- package/deps/rocksdb/rocksdb/file/file_prefetch_buffer.h +16 -0
- package/deps/rocksdb/rocksdb/file/file_util.cc +32 -14
- package/deps/rocksdb/rocksdb/file/file_util.h +22 -5
- package/deps/rocksdb/rocksdb/file/prefetch_test.cc +229 -76
- package/deps/rocksdb/rocksdb/file/random_access_file_reader.cc +21 -12
- package/deps/rocksdb/rocksdb/file/random_access_file_reader.h +10 -7
- package/deps/rocksdb/rocksdb/file/random_access_file_reader_test.cc +12 -8
- package/deps/rocksdb/rocksdb/file/sst_file_manager_impl.cc +1 -2
- package/deps/rocksdb/rocksdb/file/sst_file_manager_impl.h +0 -2
- package/deps/rocksdb/rocksdb/file/writable_file_writer.cc +3 -3
- package/deps/rocksdb/rocksdb/include/rocksdb/advanced_compression.h +598 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/advanced_iterator.h +36 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/advanced_options.h +70 -11
- package/deps/rocksdb/rocksdb/include/rocksdb/c.h +232 -11
- package/deps/rocksdb/rocksdb/include/rocksdb/cache.h +1 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/compaction_job_stats.h +3 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/compression_type.h +149 -15
- package/deps/rocksdb/rocksdb/include/rocksdb/convenience.h +17 -2
- package/deps/rocksdb/rocksdb/include/rocksdb/data_structure.h +132 -34
- package/deps/rocksdb/rocksdb/include/rocksdb/db.h +158 -79
- package/deps/rocksdb/rocksdb/include/rocksdb/db_bench_tool.h +2 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/env.h +4 -5
- package/deps/rocksdb/rocksdb/include/rocksdb/env_encryption.h +1 -3
- package/deps/rocksdb/rocksdb/include/rocksdb/experimental.h +5 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/external_table.h +275 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/file_checksum.h +2 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/file_system.h +50 -5
- package/deps/rocksdb/rocksdb/include/rocksdb/iostats_context.h +10 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/iterator.h +13 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/ldb_tool.h +0 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/listener.h +5 -2
- package/deps/rocksdb/rocksdb/include/rocksdb/memtablerep.h +13 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/multi_scan.h +237 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/options.h +230 -39
- package/deps/rocksdb/rocksdb/include/rocksdb/perf_context.h +15 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/perf_level.h +31 -11
- package/deps/rocksdb/rocksdb/include/rocksdb/slice.h +41 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/slice_transform.h +1 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/sst_dump_tool.h +0 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/sst_file_reader.h +5 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/sst_file_writer.h +0 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/statistics.h +18 -3
- package/deps/rocksdb/rocksdb/include/rocksdb/status.h +2 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/table.h +20 -8
- package/deps/rocksdb/rocksdb/include/rocksdb/table_properties.h +19 -2
- package/deps/rocksdb/rocksdb/include/rocksdb/thread_status.h +1 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/tool_hooks.h +124 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/trace_record.h +1 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/universal_compaction.h +26 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/backup_engine.h +55 -6
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/debug.h +3 -5
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/env_mirror.h +0 -2
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/ldb_cmd.h +1 -2
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/memory_util.h +0 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/object_registry.h +1 -2
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/options_util.h +0 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/secondary_index.h +96 -8
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/secondary_index_faiss.h +117 -0
- package/deps/rocksdb/rocksdb/{utilities/secondary_index/faiss_ivf_index.h → include/rocksdb/utilities/secondary_index_simple.h} +11 -14
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/stackable_db.h +26 -11
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/table_properties_collectors.h +16 -3
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/transaction.h +0 -2
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/transaction_db.h +63 -7
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/transaction_db_mutex.h +0 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/write_batch_with_index.h +28 -12
- package/deps/rocksdb/rocksdb/include/rocksdb/version.h +3 -3
- package/deps/rocksdb/rocksdb/logging/auto_roll_logger_test.cc +0 -2
- package/deps/rocksdb/rocksdb/logging/event_logger_test.cc +1 -2
- package/deps/rocksdb/rocksdb/memory/memory_allocator_impl.h +1 -1
- package/deps/rocksdb/rocksdb/memory/memory_allocator_test.cc +0 -1
- package/deps/rocksdb/rocksdb/memtable/hash_linklist_rep.cc +0 -1
- package/deps/rocksdb/rocksdb/memtable/memtablerep_bench.cc +3 -1
- package/deps/rocksdb/rocksdb/memtable/skiplist.h +2 -2
- package/deps/rocksdb/rocksdb/memtable/skiplistrep.cc +2 -4
- package/deps/rocksdb/rocksdb/memtable/vectorrep.cc +69 -8
- package/deps/rocksdb/rocksdb/memtable/wbwi_memtable.cc +32 -9
- package/deps/rocksdb/rocksdb/memtable/wbwi_memtable.h +58 -45
- package/deps/rocksdb/rocksdb/monitoring/histogram.h +1 -1
- package/deps/rocksdb/rocksdb/monitoring/perf_context.cc +5 -3
- package/deps/rocksdb/rocksdb/monitoring/statistics.cc +5 -0
- package/deps/rocksdb/rocksdb/monitoring/stats_history_test.cc +1 -1
- package/deps/rocksdb/rocksdb/monitoring/thread_status_util_debug.cc +3 -2
- package/deps/rocksdb/rocksdb/options/cf_options.cc +44 -13
- package/deps/rocksdb/rocksdb/options/cf_options.h +21 -7
- package/deps/rocksdb/rocksdb/options/configurable.cc +5 -5
- package/deps/rocksdb/rocksdb/options/configurable_test.h +1 -2
- package/deps/rocksdb/rocksdb/options/customizable.cc +0 -1
- package/deps/rocksdb/rocksdb/options/customizable_test.cc +4 -11
- package/deps/rocksdb/rocksdb/options/db_options.cc +18 -15
- package/deps/rocksdb/rocksdb/options/db_options.h +2 -2
- package/deps/rocksdb/rocksdb/options/options.cc +296 -305
- package/deps/rocksdb/rocksdb/options/options_helper.cc +188 -62
- package/deps/rocksdb/rocksdb/options/options_helper.h +3 -3
- package/deps/rocksdb/rocksdb/options/options_parser.cc +2 -4
- package/deps/rocksdb/rocksdb/options/options_parser.h +0 -1
- package/deps/rocksdb/rocksdb/options/options_settable_test.cc +17 -4
- package/deps/rocksdb/rocksdb/options/options_test.cc +101 -76
- package/deps/rocksdb/rocksdb/port/lang.h +2 -1
- package/deps/rocksdb/rocksdb/port/port_posix.cc +2 -1
- package/deps/rocksdb/rocksdb/port/stack_trace.cc +5 -4
- package/deps/rocksdb/rocksdb/port/win/env_win.cc +3 -2
- package/deps/rocksdb/rocksdb/port/win/xpress_win.cc +99 -1
- package/deps/rocksdb/rocksdb/port/win/xpress_win.h +6 -0
- package/deps/rocksdb/rocksdb/src.mk +17 -11
- package/deps/rocksdb/rocksdb/table/adaptive/adaptive_table_factory.h +0 -1
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_builder.cc +1094 -929
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_builder.h +6 -19
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_factory.cc +76 -22
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_factory.h +2 -0
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader.cc +221 -131
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader.h +12 -9
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader_impl.h +23 -24
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader_sync_and_async.h +38 -38
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader_test.cc +7 -4
- package/deps/rocksdb/rocksdb/table/block_based/block_cache.cc +5 -5
- package/deps/rocksdb/rocksdb/table/block_based/block_cache.h +10 -12
- package/deps/rocksdb/rocksdb/table/block_based/block_prefetcher.cc +6 -4
- package/deps/rocksdb/rocksdb/table/block_based/block_test.cc +35 -43
- package/deps/rocksdb/rocksdb/table/block_based/data_block_hash_index_test.cc +2 -1
- package/deps/rocksdb/rocksdb/table/block_based/filter_block.h +1 -1
- package/deps/rocksdb/rocksdb/table/block_based/filter_block_reader_common.cc +1 -2
- package/deps/rocksdb/rocksdb/table/block_based/filter_policy.cc +0 -4
- package/deps/rocksdb/rocksdb/table/block_based/filter_policy_internal.h +0 -1
- package/deps/rocksdb/rocksdb/table/block_based/hash_index_reader.cc +3 -3
- package/deps/rocksdb/rocksdb/table/block_based/index_reader_common.cc +3 -3
- package/deps/rocksdb/rocksdb/table/block_based/partitioned_filter_block.cc +4 -4
- package/deps/rocksdb/rocksdb/table/block_based/partitioned_index_reader.cc +1 -1
- package/deps/rocksdb/rocksdb/table/block_based/uncompression_dict_reader.cc +4 -5
- package/deps/rocksdb/rocksdb/table/block_based/uncompression_dict_reader.h +4 -4
- package/deps/rocksdb/rocksdb/table/block_fetcher.cc +37 -35
- package/deps/rocksdb/rocksdb/table/block_fetcher.h +11 -7
- package/deps/rocksdb/rocksdb/table/block_fetcher_test.cc +4 -3
- package/deps/rocksdb/rocksdb/table/compaction_merging_iterator.cc +31 -5
- package/deps/rocksdb/rocksdb/table/compaction_merging_iterator.h +2 -1
- package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_builder.h +0 -1
- package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_builder_test.cc +0 -1
- package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_reader_test.cc +0 -1
- package/deps/rocksdb/rocksdb/table/external_table.cc +483 -0
- package/deps/rocksdb/rocksdb/table/format.cc +62 -44
- package/deps/rocksdb/rocksdb/table/format.h +35 -12
- package/deps/rocksdb/rocksdb/table/internal_iterator.h +3 -13
- package/deps/rocksdb/rocksdb/table/iterator_wrapper.h +8 -0
- package/deps/rocksdb/rocksdb/table/merging_iterator.cc +6 -0
- package/deps/rocksdb/rocksdb/table/meta_blocks.cc +150 -141
- package/deps/rocksdb/rocksdb/table/meta_blocks.h +5 -0
- package/deps/rocksdb/rocksdb/table/multiget_context.h +3 -2
- package/deps/rocksdb/rocksdb/table/plain/plain_table_builder.cc +8 -0
- package/deps/rocksdb/rocksdb/table/plain/plain_table_index.cc +0 -1
- package/deps/rocksdb/rocksdb/table/plain/plain_table_index.h +0 -2
- package/deps/rocksdb/rocksdb/table/plain/plain_table_key_coding.h +0 -2
- package/deps/rocksdb/rocksdb/table/plain/plain_table_reader.cc +0 -1
- package/deps/rocksdb/rocksdb/table/sst_file_dumper.cc +6 -6
- package/deps/rocksdb/rocksdb/table/sst_file_dumper.h +0 -1
- package/deps/rocksdb/rocksdb/table/sst_file_reader.cc +86 -7
- package/deps/rocksdb/rocksdb/table/sst_file_reader_test.cc +88 -2
- package/deps/rocksdb/rocksdb/table/sst_file_writer.cc +0 -1
- package/deps/rocksdb/rocksdb/table/table_builder.h +10 -1
- package/deps/rocksdb/rocksdb/table/table_reader_bench.cc +3 -2
- package/deps/rocksdb/rocksdb/table/table_test.cc +899 -22
- package/deps/rocksdb/rocksdb/test_util/testutil.cc +3 -4
- package/deps/rocksdb/rocksdb/test_util/testutil.h +132 -1
- package/deps/rocksdb/rocksdb/test_util/transaction_test_util.cc +0 -1
- package/deps/rocksdb/rocksdb/test_util/transaction_test_util.h +0 -2
- package/deps/rocksdb/rocksdb/tools/db_bench_tool.cc +163 -77
- package/deps/rocksdb/rocksdb/tools/db_bench_tool_test.cc +0 -2
- package/deps/rocksdb/rocksdb/tools/db_repl_stress.cc +0 -1
- package/deps/rocksdb/rocksdb/tools/dump/db_dump_tool.cc +0 -1
- package/deps/rocksdb/rocksdb/tools/ldb_cmd.cc +120 -52
- package/deps/rocksdb/rocksdb/tools/ldb_cmd_test.cc +1 -0
- package/deps/rocksdb/rocksdb/tools/ldb_tool.cc +1 -1
- package/deps/rocksdb/rocksdb/tools/reduce_levels_test.cc +0 -2
- package/deps/rocksdb/rocksdb/tools/simulated_hybrid_file_system.cc +2 -2
- package/deps/rocksdb/rocksdb/tools/simulated_hybrid_file_system.h +0 -2
- package/deps/rocksdb/rocksdb/tools/sst_dump_tool.cc +2 -1
- package/deps/rocksdb/rocksdb/tools/tool_hooks.cc +94 -0
- package/deps/rocksdb/rocksdb/tools/trace_analyzer_tool.cc +0 -1
- package/deps/rocksdb/rocksdb/tools/trace_analyzer_tool.h +0 -1
- package/deps/rocksdb/rocksdb/trace_replay/io_tracer.cc +1 -1
- package/deps/rocksdb/rocksdb/trace_replay/io_tracer_test.cc +2 -1
- package/deps/rocksdb/rocksdb/trace_replay/trace_replay.cc +3 -5
- package/deps/rocksdb/rocksdb/util/async_file_reader.cc +1 -1
- package/deps/rocksdb/rocksdb/util/async_file_reader.h +15 -8
- package/deps/rocksdb/rocksdb/util/auto_skip_compressor.cc +131 -0
- package/deps/rocksdb/rocksdb/util/auto_skip_compressor.h +90 -0
- package/deps/rocksdb/rocksdb/util/autovector.h +1 -1
- package/deps/rocksdb/rocksdb/util/autovector_test.cc +2 -2
- package/deps/rocksdb/rocksdb/util/compaction_job_stats_impl.cc +0 -2
- package/deps/rocksdb/rocksdb/util/compression.cc +936 -4
- package/deps/rocksdb/rocksdb/util/compression.h +348 -232
- package/deps/rocksdb/rocksdb/util/compression_test.cc +229 -0
- package/deps/rocksdb/rocksdb/util/crc32c_arm64.cc +10 -10
- package/deps/rocksdb/rocksdb/util/crc32c_ppc.c +1 -0
- package/deps/rocksdb/rocksdb/util/data_structure.cc +2 -0
- package/deps/rocksdb/rocksdb/util/file_reader_writer_test.cc +1 -3
- package/deps/rocksdb/rocksdb/util/ppc-opcode.h +5 -5
- package/deps/rocksdb/rocksdb/util/simple_mixed_compressor.cc +108 -0
- package/deps/rocksdb/rocksdb/util/simple_mixed_compressor.h +67 -0
- package/deps/rocksdb/rocksdb/util/slice_test.cc +83 -0
- package/deps/rocksdb/rocksdb/util/string_util.cc +0 -2
- package/deps/rocksdb/rocksdb/util/string_util.h +10 -0
- package/deps/rocksdb/rocksdb/util/thread_operation.h +2 -1
- package/deps/rocksdb/rocksdb/util/udt_util.cc +18 -5
- package/deps/rocksdb/rocksdb/util/udt_util.h +10 -7
- package/deps/rocksdb/rocksdb/utilities/backup/backup_engine.cc +650 -154
- package/deps/rocksdb/rocksdb/utilities/backup/backup_engine_test.cc +438 -144
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_compaction_filter.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db.h +0 -1
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_gc_stats.h +0 -1
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_impl.cc +16 -17
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_impl.h +2 -1
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_impl_filesnapshot.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_listener.h +0 -1
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_test.cc +7 -8
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_dump_tool.cc +4 -3
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_dump_tool.h +0 -1
- package/deps/rocksdb/rocksdb/utilities/cache_dump_load.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/cache_dump_load_impl.cc +2 -2
- package/deps/rocksdb/rocksdb/utilities/checkpoint/checkpoint_impl.cc +1 -1
- package/deps/rocksdb/rocksdb/utilities/checkpoint/checkpoint_test.cc +0 -48
- package/deps/rocksdb/rocksdb/utilities/compaction_filters/remove_emptyvalue_compactionfilter.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/compaction_filters/remove_emptyvalue_compactionfilter.h +0 -1
- package/deps/rocksdb/rocksdb/utilities/debug.cc +7 -14
- package/deps/rocksdb/rocksdb/utilities/env_mirror.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/env_mirror_test.cc +0 -2
- package/deps/rocksdb/rocksdb/utilities/env_timed.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/env_timed_test.cc +0 -2
- package/deps/rocksdb/rocksdb/utilities/fault_injection_fs.cc +5 -3
- package/deps/rocksdb/rocksdb/utilities/fault_injection_fs.h +10 -9
- package/deps/rocksdb/rocksdb/utilities/memory/memory_test.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/memory/memory_util.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/memory_allocators.h +1 -0
- package/deps/rocksdb/rocksdb/utilities/object_registry_test.cc +0 -2
- package/deps/rocksdb/rocksdb/utilities/options/options_util.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/options/options_util_test.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier.h +0 -2
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier_file.h +0 -2
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier_metadata.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier_metadata.h +0 -2
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/hash_table.h +0 -2
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/hash_table_evictable.h +0 -2
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/lrulist.h +0 -2
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/persistent_cache_test.h +0 -2
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/persistent_cache_tier.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/persistent_cache_tier.h +0 -2
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/volatile_tier_impl.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/volatile_tier_impl.h +0 -2
- package/deps/rocksdb/rocksdb/utilities/secondary_index/faiss_ivf_index.cc +183 -32
- package/deps/rocksdb/rocksdb/utilities/secondary_index/faiss_ivf_index_test.cc +258 -12
- package/deps/rocksdb/rocksdb/utilities/secondary_index/secondary_index_helper.h +33 -0
- package/deps/rocksdb/rocksdb/utilities/secondary_index/secondary_index_iterator.cc +99 -0
- package/deps/rocksdb/rocksdb/utilities/secondary_index/secondary_index_mixin.h +280 -120
- package/deps/rocksdb/rocksdb/utilities/secondary_index/simple_secondary_index.cc +79 -0
- package/deps/rocksdb/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector.cc +52 -16
- package/deps/rocksdb/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector.h +10 -6
- package/deps/rocksdb/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector_test.cc +55 -0
- package/deps/rocksdb/rocksdb/utilities/trace/replayer_impl.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/lock_manager.cc +0 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/lock_manager.h +0 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/point/point_lock_manager.cc +37 -12
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/point/point_lock_manager.h +2 -0
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/point/point_lock_manager_test.cc +0 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/point/point_lock_tracker.cc +0 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_locking_test.cc +1 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/lib/db.h +1 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_time.h +1 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/dbt.cc +2 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_manager.cc +2 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/optimistic_transaction.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/optimistic_transaction.h +0 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/optimistic_transaction_db_impl.cc +1 -3
- package/deps/rocksdb/rocksdb/utilities/transactions/pessimistic_transaction.cc +36 -10
- package/deps/rocksdb/rocksdb/utilities/transactions/pessimistic_transaction.h +5 -7
- package/deps/rocksdb/rocksdb/utilities/transactions/pessimistic_transaction_db.cc +4 -5
- package/deps/rocksdb/rocksdb/utilities/transactions/snapshot_checker.cc +1 -4
- package/deps/rocksdb/rocksdb/utilities/transactions/transaction_base.h +1 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/transaction_db_mutex_impl.cc +0 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/transaction_db_mutex_impl.h +0 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/transaction_test.cc +1118 -37
- package/deps/rocksdb/rocksdb/utilities/transactions/transaction_test.h +4 -7
- package/deps/rocksdb/rocksdb/utilities/transactions/transaction_util.cc +0 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/transaction_util.h +0 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_transaction_test.cc +3 -3
- package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_txn_db.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/write_unprepared_transaction_test.cc +0 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/write_unprepared_txn.cc +1 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/write_unprepared_txn.h +1 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/write_unprepared_txn_db.cc +0 -1
- package/deps/rocksdb/rocksdb/utilities/ttl/ttl_test.cc +0 -3
- package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index.cc +125 -127
- package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index_internal.cc +45 -23
- package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index_internal.h +54 -22
- package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index_test.cc +477 -58
- package/deps/rocksdb/rocksdb.gyp +9 -4
- package/index.js +50 -9
- package/package.json +8 -1
- package/prebuilds/darwin-arm64/@nxtedition+rocksdb.node +0 -0
- package/prebuilds/linux-x64/@nxtedition+rocksdb.node +0 -0
|
@@ -24,12 +24,14 @@
|
|
|
24
24
|
#include "rocksdb/experimental.h"
|
|
25
25
|
#include "rocksdb/filter_policy.h"
|
|
26
26
|
#include "rocksdb/iterator.h"
|
|
27
|
+
#include "rocksdb/listener.h"
|
|
27
28
|
#include "rocksdb/memtablerep.h"
|
|
28
29
|
#include "rocksdb/merge_operator.h"
|
|
29
30
|
#include "rocksdb/options.h"
|
|
30
31
|
#include "rocksdb/perf_context.h"
|
|
31
32
|
#include "rocksdb/rate_limiter.h"
|
|
32
33
|
#include "rocksdb/slice_transform.h"
|
|
34
|
+
#include "rocksdb/sst_file_manager.h"
|
|
33
35
|
#include "rocksdb/statistics.h"
|
|
34
36
|
#include "rocksdb/status.h"
|
|
35
37
|
#include "rocksdb/table.h"
|
|
@@ -49,6 +51,7 @@
|
|
|
49
51
|
#include "util/stderr_logger.h"
|
|
50
52
|
#include "utilities/merge_operators.h"
|
|
51
53
|
|
|
54
|
+
using ROCKSDB_NAMESPACE::BackgroundErrorReason;
|
|
52
55
|
using ROCKSDB_NAMESPACE::BackupEngine;
|
|
53
56
|
using ROCKSDB_NAMESPACE::BackupEngineOptions;
|
|
54
57
|
using ROCKSDB_NAMESPACE::BackupID;
|
|
@@ -65,7 +68,9 @@ using ROCKSDB_NAMESPACE::ColumnFamilyMetaData;
|
|
|
65
68
|
using ROCKSDB_NAMESPACE::ColumnFamilyOptions;
|
|
66
69
|
using ROCKSDB_NAMESPACE::CompactionFilter;
|
|
67
70
|
using ROCKSDB_NAMESPACE::CompactionFilterFactory;
|
|
71
|
+
using ROCKSDB_NAMESPACE::CompactionJobInfo;
|
|
68
72
|
using ROCKSDB_NAMESPACE::CompactionOptionsFIFO;
|
|
73
|
+
using ROCKSDB_NAMESPACE::CompactionReason;
|
|
69
74
|
using ROCKSDB_NAMESPACE::CompactRangeOptions;
|
|
70
75
|
using ROCKSDB_NAMESPACE::Comparator;
|
|
71
76
|
using ROCKSDB_NAMESPACE::CompressionType;
|
|
@@ -76,8 +81,11 @@ using ROCKSDB_NAMESPACE::DBOptions;
|
|
|
76
81
|
using ROCKSDB_NAMESPACE::DbPath;
|
|
77
82
|
using ROCKSDB_NAMESPACE::Env;
|
|
78
83
|
using ROCKSDB_NAMESPACE::EnvOptions;
|
|
84
|
+
using ROCKSDB_NAMESPACE::EventListener;
|
|
85
|
+
using ROCKSDB_NAMESPACE::ExternalFileIngestionInfo;
|
|
79
86
|
using ROCKSDB_NAMESPACE::FileLock;
|
|
80
87
|
using ROCKSDB_NAMESPACE::FilterPolicy;
|
|
88
|
+
using ROCKSDB_NAMESPACE::FlushJobInfo;
|
|
81
89
|
using ROCKSDB_NAMESPACE::FlushOptions;
|
|
82
90
|
using ROCKSDB_NAMESPACE::HistogramData;
|
|
83
91
|
using ROCKSDB_NAMESPACE::HyperClockCacheOptions;
|
|
@@ -90,6 +98,7 @@ using ROCKSDB_NAMESPACE::Logger;
|
|
|
90
98
|
using ROCKSDB_NAMESPACE::LRUCacheOptions;
|
|
91
99
|
using ROCKSDB_NAMESPACE::MemoryAllocator;
|
|
92
100
|
using ROCKSDB_NAMESPACE::MemoryUtil;
|
|
101
|
+
using ROCKSDB_NAMESPACE::MemTableInfo;
|
|
93
102
|
using ROCKSDB_NAMESPACE::MergeOperator;
|
|
94
103
|
using ROCKSDB_NAMESPACE::NewBloomFilterPolicy;
|
|
95
104
|
using ROCKSDB_NAMESPACE::NewCompactOnDeletionCollectorFactory;
|
|
@@ -113,10 +122,12 @@ using ROCKSDB_NAMESPACE::Slice;
|
|
|
113
122
|
using ROCKSDB_NAMESPACE::SliceParts;
|
|
114
123
|
using ROCKSDB_NAMESPACE::SliceTransform;
|
|
115
124
|
using ROCKSDB_NAMESPACE::Snapshot;
|
|
125
|
+
using ROCKSDB_NAMESPACE::SstFileManager;
|
|
116
126
|
using ROCKSDB_NAMESPACE::SstFileMetaData;
|
|
117
127
|
using ROCKSDB_NAMESPACE::SstFileWriter;
|
|
118
128
|
using ROCKSDB_NAMESPACE::Status;
|
|
119
129
|
using ROCKSDB_NAMESPACE::StderrLogger;
|
|
130
|
+
using ROCKSDB_NAMESPACE::SubcompactionJobInfo;
|
|
120
131
|
using ROCKSDB_NAMESPACE::TablePropertiesCollectorFactory;
|
|
121
132
|
using ROCKSDB_NAMESPACE::Transaction;
|
|
122
133
|
using ROCKSDB_NAMESPACE::TransactionDB;
|
|
@@ -130,6 +141,8 @@ using ROCKSDB_NAMESPACE::WriteBatch;
|
|
|
130
141
|
using ROCKSDB_NAMESPACE::WriteBatchWithIndex;
|
|
131
142
|
using ROCKSDB_NAMESPACE::WriteBufferManager;
|
|
132
143
|
using ROCKSDB_NAMESPACE::WriteOptions;
|
|
144
|
+
using ROCKSDB_NAMESPACE::WriteStallCondition;
|
|
145
|
+
using ROCKSDB_NAMESPACE::WriteStallInfo;
|
|
133
146
|
|
|
134
147
|
using std::unordered_set;
|
|
135
148
|
using std::vector;
|
|
@@ -139,6 +152,9 @@ extern "C" {
|
|
|
139
152
|
struct rocksdb_t {
|
|
140
153
|
DB* rep;
|
|
141
154
|
};
|
|
155
|
+
struct rocksdb_status_ptr_t {
|
|
156
|
+
Status* rep;
|
|
157
|
+
};
|
|
142
158
|
struct rocksdb_backup_engine_t {
|
|
143
159
|
BackupEngine* rep;
|
|
144
160
|
};
|
|
@@ -226,12 +242,15 @@ struct rocksdb_cache_t {
|
|
|
226
242
|
struct rocksdb_write_buffer_manager_t {
|
|
227
243
|
std::shared_ptr<WriteBufferManager> rep;
|
|
228
244
|
};
|
|
245
|
+
struct rocksdb_sst_file_manager_t {
|
|
246
|
+
std::shared_ptr<SstFileManager> rep;
|
|
247
|
+
};
|
|
229
248
|
struct rocksdb_livefiles_t {
|
|
230
249
|
std::vector<LiveFileMetaData> rep;
|
|
231
250
|
};
|
|
232
251
|
struct rocksdb_column_family_handle_t {
|
|
233
252
|
ColumnFamilyHandle* rep;
|
|
234
|
-
bool immortal;
|
|
253
|
+
bool immortal; /* only true for default cf */
|
|
235
254
|
};
|
|
236
255
|
struct rocksdb_column_family_metadata_t {
|
|
237
256
|
ColumnFamilyMetaData rep;
|
|
@@ -292,6 +311,28 @@ struct rocksdb_compactionfiltercontext_t {
|
|
|
292
311
|
CompactionFilter::Context rep;
|
|
293
312
|
};
|
|
294
313
|
|
|
314
|
+
struct rocksdb_flushjobinfo_t {
|
|
315
|
+
FlushJobInfo rep;
|
|
316
|
+
};
|
|
317
|
+
struct rocksdb_writestallcondition_t {
|
|
318
|
+
WriteStallCondition rep;
|
|
319
|
+
};
|
|
320
|
+
struct rocksdb_writestallinfo_t {
|
|
321
|
+
WriteStallInfo rep;
|
|
322
|
+
};
|
|
323
|
+
struct rocksdb_memtableinfo_t {
|
|
324
|
+
MemTableInfo rep;
|
|
325
|
+
};
|
|
326
|
+
struct rocksdb_compactionjobinfo_t {
|
|
327
|
+
CompactionJobInfo rep;
|
|
328
|
+
};
|
|
329
|
+
struct rocksdb_subcompactionjobinfo_t {
|
|
330
|
+
SubcompactionJobInfo rep;
|
|
331
|
+
};
|
|
332
|
+
struct rocksdb_externalfileingestioninfo_t {
|
|
333
|
+
ExternalFileIngestionInfo rep;
|
|
334
|
+
};
|
|
335
|
+
|
|
295
336
|
struct rocksdb_statistics_histogram_data_t {
|
|
296
337
|
rocksdb_statistics_histogram_data_t() : rep() {}
|
|
297
338
|
HistogramData rep;
|
|
@@ -1858,10 +1899,6 @@ extern ROCKSDB_LIBRARY_API void rocksdb_approximate_sizes_cf_with_flags(
|
|
|
1858
1899
|
delete[] ranges;
|
|
1859
1900
|
}
|
|
1860
1901
|
|
|
1861
|
-
void rocksdb_delete_file(rocksdb_t* db, const char* name) {
|
|
1862
|
-
db->rep->DeleteFile(name);
|
|
1863
|
-
}
|
|
1864
|
-
|
|
1865
1902
|
const rocksdb_livefiles_t* rocksdb_livefiles(rocksdb_t* db) {
|
|
1866
1903
|
rocksdb_livefiles_t* result = new rocksdb_livefiles_t;
|
|
1867
1904
|
db->rep->GetLiveFilesMetaData(&result->rep);
|
|
@@ -2631,6 +2668,16 @@ rocksdb_iterator_t* rocksdb_writebatch_wi_create_iterator_with_base(
|
|
|
2631
2668
|
return result;
|
|
2632
2669
|
}
|
|
2633
2670
|
|
|
2671
|
+
rocksdb_iterator_t* rocksdb_writebatch_wi_create_iterator_with_base_readopts(
|
|
2672
|
+
rocksdb_writebatch_wi_t* wbwi, rocksdb_iterator_t* base_iterator,
|
|
2673
|
+
const rocksdb_readoptions_t* options) {
|
|
2674
|
+
rocksdb_iterator_t* result = new rocksdb_iterator_t;
|
|
2675
|
+
result->rep =
|
|
2676
|
+
wbwi->rep->NewIteratorWithBase(base_iterator->rep, &options->rep);
|
|
2677
|
+
delete base_iterator;
|
|
2678
|
+
return result;
|
|
2679
|
+
}
|
|
2680
|
+
|
|
2634
2681
|
rocksdb_iterator_t* rocksdb_writebatch_wi_create_iterator_with_base_cf(
|
|
2635
2682
|
rocksdb_writebatch_wi_t* wbwi, rocksdb_iterator_t* base_iterator,
|
|
2636
2683
|
rocksdb_column_family_handle_t* column_family) {
|
|
@@ -2641,6 +2688,17 @@ rocksdb_iterator_t* rocksdb_writebatch_wi_create_iterator_with_base_cf(
|
|
|
2641
2688
|
return result;
|
|
2642
2689
|
}
|
|
2643
2690
|
|
|
2691
|
+
rocksdb_iterator_t* rocksdb_writebatch_wi_create_iterator_with_base_cf_readopts(
|
|
2692
|
+
rocksdb_writebatch_wi_t* wbwi, rocksdb_iterator_t* base_iterator,
|
|
2693
|
+
rocksdb_column_family_handle_t* column_family,
|
|
2694
|
+
const rocksdb_readoptions_t* options) {
|
|
2695
|
+
rocksdb_iterator_t* result = new rocksdb_iterator_t;
|
|
2696
|
+
result->rep = wbwi->rep->NewIteratorWithBase(
|
|
2697
|
+
column_family->rep, base_iterator->rep, &options->rep);
|
|
2698
|
+
delete base_iterator;
|
|
2699
|
+
return result;
|
|
2700
|
+
}
|
|
2701
|
+
|
|
2644
2702
|
char* rocksdb_writebatch_wi_get_from_batch(rocksdb_writebatch_wi_t* wbwi,
|
|
2645
2703
|
const rocksdb_options_t* options,
|
|
2646
2704
|
const char* key, size_t keylen,
|
|
@@ -2700,6 +2758,23 @@ char* rocksdb_writebatch_wi_get_from_batch_and_db(
|
|
|
2700
2758
|
return result;
|
|
2701
2759
|
}
|
|
2702
2760
|
|
|
2761
|
+
rocksdb_pinnableslice_t* rocksdb_writebatch_wi_get_pinned_from_batch_and_db(
|
|
2762
|
+
rocksdb_writebatch_wi_t* wbwi, rocksdb_t* db,
|
|
2763
|
+
const rocksdb_readoptions_t* options, const char* key, size_t keylen,
|
|
2764
|
+
char** errptr) {
|
|
2765
|
+
rocksdb_pinnableslice_t* v = new (rocksdb_pinnableslice_t);
|
|
2766
|
+
Status s = wbwi->rep->GetFromBatchAndDB(db->rep, options->rep,
|
|
2767
|
+
Slice(key, keylen), &v->rep);
|
|
2768
|
+
if (!s.ok()) {
|
|
2769
|
+
delete (v);
|
|
2770
|
+
if (!s.IsNotFound()) {
|
|
2771
|
+
SaveError(errptr, s);
|
|
2772
|
+
}
|
|
2773
|
+
return nullptr;
|
|
2774
|
+
}
|
|
2775
|
+
return v;
|
|
2776
|
+
}
|
|
2777
|
+
|
|
2703
2778
|
char* rocksdb_writebatch_wi_get_from_batch_and_db_cf(
|
|
2704
2779
|
rocksdb_writebatch_wi_t* wbwi, rocksdb_t* db,
|
|
2705
2780
|
const rocksdb_readoptions_t* options,
|
|
@@ -2721,6 +2796,24 @@ char* rocksdb_writebatch_wi_get_from_batch_and_db_cf(
|
|
|
2721
2796
|
return result;
|
|
2722
2797
|
}
|
|
2723
2798
|
|
|
2799
|
+
rocksdb_pinnableslice_t* rocksdb_writebatch_wi_get_pinned_from_batch_and_db_cf(
|
|
2800
|
+
rocksdb_writebatch_wi_t* wbwi, rocksdb_t* db,
|
|
2801
|
+
const rocksdb_readoptions_t* options,
|
|
2802
|
+
rocksdb_column_family_handle_t* column_family, const char* key,
|
|
2803
|
+
size_t keylen, char** errptr) {
|
|
2804
|
+
rocksdb_pinnableslice_t* v = new (rocksdb_pinnableslice_t);
|
|
2805
|
+
Status s = wbwi->rep->GetFromBatchAndDB(
|
|
2806
|
+
db->rep, options->rep, column_family->rep, Slice(key, keylen), &v->rep);
|
|
2807
|
+
if (!s.ok()) {
|
|
2808
|
+
delete (v);
|
|
2809
|
+
if (!s.IsNotFound()) {
|
|
2810
|
+
SaveError(errptr, s);
|
|
2811
|
+
}
|
|
2812
|
+
return nullptr;
|
|
2813
|
+
}
|
|
2814
|
+
return v;
|
|
2815
|
+
}
|
|
2816
|
+
|
|
2724
2817
|
void rocksdb_write_writebatch_wi(rocksdb_t* db,
|
|
2725
2818
|
const rocksdb_writeoptions_t* options,
|
|
2726
2819
|
rocksdb_writebatch_wi_t* wbwi, char** errptr) {
|
|
@@ -2934,6 +3027,352 @@ void rocksdb_block_based_options_set_unpartitioned_pinning_tier(
|
|
|
2934
3027
|
static_cast<ROCKSDB_NAMESPACE::PinningTier>(v);
|
|
2935
3028
|
}
|
|
2936
3029
|
|
|
3030
|
+
/* FlushJobInfo */
|
|
3031
|
+
|
|
3032
|
+
const char* rocksdb_flushjobinfo_cf_name(const rocksdb_flushjobinfo_t* info,
|
|
3033
|
+
size_t* size) {
|
|
3034
|
+
*size = info->rep.cf_name.size();
|
|
3035
|
+
return info->rep.cf_name.data();
|
|
3036
|
+
}
|
|
3037
|
+
|
|
3038
|
+
const char* rocksdb_flushjobinfo_file_path(const rocksdb_flushjobinfo_t* info,
|
|
3039
|
+
size_t* size) {
|
|
3040
|
+
*size = info->rep.file_path.size();
|
|
3041
|
+
return info->rep.file_path.data();
|
|
3042
|
+
}
|
|
3043
|
+
|
|
3044
|
+
unsigned char rocksdb_flushjobinfo_triggered_writes_slowdown(
|
|
3045
|
+
const rocksdb_flushjobinfo_t* info) {
|
|
3046
|
+
return info->rep.triggered_writes_slowdown;
|
|
3047
|
+
}
|
|
3048
|
+
|
|
3049
|
+
unsigned char rocksdb_flushjobinfo_triggered_writes_stop(
|
|
3050
|
+
const rocksdb_flushjobinfo_t* info) {
|
|
3051
|
+
return info->rep.triggered_writes_stop;
|
|
3052
|
+
}
|
|
3053
|
+
|
|
3054
|
+
uint64_t rocksdb_flushjobinfo_largest_seqno(
|
|
3055
|
+
const rocksdb_flushjobinfo_t* info) {
|
|
3056
|
+
return info->rep.largest_seqno;
|
|
3057
|
+
}
|
|
3058
|
+
|
|
3059
|
+
uint64_t rocksdb_flushjobinfo_smallest_seqno(
|
|
3060
|
+
const rocksdb_flushjobinfo_t* info) {
|
|
3061
|
+
return info->rep.smallest_seqno;
|
|
3062
|
+
}
|
|
3063
|
+
|
|
3064
|
+
void rocksdb_reset_status(rocksdb_status_ptr_t* status_ptr) {
|
|
3065
|
+
auto ptr = status_ptr->rep;
|
|
3066
|
+
*ptr = Status::OK();
|
|
3067
|
+
}
|
|
3068
|
+
|
|
3069
|
+
/* CompactionJobInfo */
|
|
3070
|
+
|
|
3071
|
+
void rocksdb_compactionjobinfo_status(const rocksdb_compactionjobinfo_t* info,
|
|
3072
|
+
char** errptr) {
|
|
3073
|
+
SaveError(errptr, info->rep.status);
|
|
3074
|
+
}
|
|
3075
|
+
|
|
3076
|
+
const char* rocksdb_compactionjobinfo_cf_name(
|
|
3077
|
+
const rocksdb_compactionjobinfo_t* info, size_t* size) {
|
|
3078
|
+
*size = info->rep.cf_name.size();
|
|
3079
|
+
return info->rep.cf_name.data();
|
|
3080
|
+
}
|
|
3081
|
+
|
|
3082
|
+
size_t rocksdb_compactionjobinfo_input_files_count(
|
|
3083
|
+
const rocksdb_compactionjobinfo_t* info) {
|
|
3084
|
+
return info->rep.input_files.size();
|
|
3085
|
+
}
|
|
3086
|
+
|
|
3087
|
+
const char* rocksdb_compactionjobinfo_input_file_at(
|
|
3088
|
+
const rocksdb_compactionjobinfo_t* info, size_t pos, size_t* size) {
|
|
3089
|
+
assert(info != nullptr);
|
|
3090
|
+
assert(pos < info->rep.input_files.size());
|
|
3091
|
+
|
|
3092
|
+
const std::string& path = info->rep.input_files[pos];
|
|
3093
|
+
*size = path.size();
|
|
3094
|
+
return path.data();
|
|
3095
|
+
}
|
|
3096
|
+
|
|
3097
|
+
size_t rocksdb_compactionjobinfo_output_files_count(
|
|
3098
|
+
const rocksdb_compactionjobinfo_t* info) {
|
|
3099
|
+
return info->rep.output_files.size();
|
|
3100
|
+
}
|
|
3101
|
+
|
|
3102
|
+
const char* rocksdb_compactionjobinfo_output_file_at(
|
|
3103
|
+
const rocksdb_compactionjobinfo_t* info, size_t pos, size_t* size) {
|
|
3104
|
+
assert(info != nullptr);
|
|
3105
|
+
assert(pos < info->rep.output_files.size());
|
|
3106
|
+
|
|
3107
|
+
const std::string& path = info->rep.output_files[pos];
|
|
3108
|
+
*size = path.size();
|
|
3109
|
+
return path.data();
|
|
3110
|
+
}
|
|
3111
|
+
|
|
3112
|
+
uint64_t rocksdb_compactionjobinfo_elapsed_micros(
|
|
3113
|
+
const rocksdb_compactionjobinfo_t* info) {
|
|
3114
|
+
return info->rep.stats.elapsed_micros;
|
|
3115
|
+
}
|
|
3116
|
+
|
|
3117
|
+
uint64_t rocksdb_compactionjobinfo_num_corrupt_keys(
|
|
3118
|
+
const rocksdb_compactionjobinfo_t* info) {
|
|
3119
|
+
return info->rep.stats.num_corrupt_keys;
|
|
3120
|
+
}
|
|
3121
|
+
|
|
3122
|
+
int rocksdb_compactionjobinfo_base_input_level(
|
|
3123
|
+
const rocksdb_compactionjobinfo_t* info) {
|
|
3124
|
+
return info->rep.base_input_level;
|
|
3125
|
+
}
|
|
3126
|
+
|
|
3127
|
+
int rocksdb_compactionjobinfo_output_level(
|
|
3128
|
+
const rocksdb_compactionjobinfo_t* info) {
|
|
3129
|
+
return info->rep.output_level;
|
|
3130
|
+
}
|
|
3131
|
+
|
|
3132
|
+
size_t rocksdb_compactionjobinfo_num_input_files(
|
|
3133
|
+
const rocksdb_compactionjobinfo_t* info) {
|
|
3134
|
+
return info->rep.stats.num_input_files;
|
|
3135
|
+
}
|
|
3136
|
+
|
|
3137
|
+
size_t rocksdb_compactionjobinfo_num_input_files_at_output_level(
|
|
3138
|
+
const rocksdb_compactionjobinfo_t* info) {
|
|
3139
|
+
return info->rep.stats.num_input_files_at_output_level;
|
|
3140
|
+
}
|
|
3141
|
+
|
|
3142
|
+
uint64_t rocksdb_compactionjobinfo_input_records(
|
|
3143
|
+
const rocksdb_compactionjobinfo_t* info) {
|
|
3144
|
+
return info->rep.stats.num_input_records;
|
|
3145
|
+
}
|
|
3146
|
+
|
|
3147
|
+
uint64_t rocksdb_compactionjobinfo_output_records(
|
|
3148
|
+
const rocksdb_compactionjobinfo_t* info) {
|
|
3149
|
+
return info->rep.stats.num_output_records;
|
|
3150
|
+
}
|
|
3151
|
+
|
|
3152
|
+
uint64_t rocksdb_compactionjobinfo_total_input_bytes(
|
|
3153
|
+
const rocksdb_compactionjobinfo_t* info) {
|
|
3154
|
+
return info->rep.stats.total_input_bytes;
|
|
3155
|
+
}
|
|
3156
|
+
|
|
3157
|
+
uint64_t rocksdb_compactionjobinfo_total_output_bytes(
|
|
3158
|
+
const rocksdb_compactionjobinfo_t* info) {
|
|
3159
|
+
return info->rep.stats.total_output_bytes;
|
|
3160
|
+
}
|
|
3161
|
+
|
|
3162
|
+
uint32_t rocksdb_compactionjobinfo_compaction_reason(
|
|
3163
|
+
const rocksdb_compactionjobinfo_t* info) {
|
|
3164
|
+
return static_cast<uint32_t>(info->rep.compaction_reason);
|
|
3165
|
+
}
|
|
3166
|
+
|
|
3167
|
+
/* SubcompactionJobInfo */
|
|
3168
|
+
|
|
3169
|
+
void rocksdb_subcompactionjobinfo_status(
|
|
3170
|
+
const rocksdb_subcompactionjobinfo_t* info, char** errptr) {
|
|
3171
|
+
SaveError(errptr, info->rep.status);
|
|
3172
|
+
}
|
|
3173
|
+
|
|
3174
|
+
const char* rocksdb_subcompactionjobinfo_cf_name(
|
|
3175
|
+
const rocksdb_subcompactionjobinfo_t* info, size_t* size) {
|
|
3176
|
+
*size = info->rep.cf_name.size();
|
|
3177
|
+
return info->rep.cf_name.data();
|
|
3178
|
+
}
|
|
3179
|
+
|
|
3180
|
+
uint64_t rocksdb_subcompactionjobinfo_thread_id(
|
|
3181
|
+
const rocksdb_subcompactionjobinfo_t* info) {
|
|
3182
|
+
return info->rep.thread_id;
|
|
3183
|
+
}
|
|
3184
|
+
|
|
3185
|
+
int rocksdb_subcompactionjobinfo_base_input_level(
|
|
3186
|
+
const rocksdb_subcompactionjobinfo_t* info) {
|
|
3187
|
+
return info->rep.base_input_level;
|
|
3188
|
+
}
|
|
3189
|
+
|
|
3190
|
+
int rocksdb_subcompactionjobinfo_output_level(
|
|
3191
|
+
const rocksdb_subcompactionjobinfo_t* info) {
|
|
3192
|
+
return info->rep.output_level;
|
|
3193
|
+
}
|
|
3194
|
+
|
|
3195
|
+
/* ExternalFileIngestionInfo */
|
|
3196
|
+
|
|
3197
|
+
const char* rocksdb_externalfileingestioninfo_cf_name(
|
|
3198
|
+
const rocksdb_externalfileingestioninfo_t* info, size_t* size) {
|
|
3199
|
+
*size = info->rep.cf_name.size();
|
|
3200
|
+
return info->rep.cf_name.data();
|
|
3201
|
+
}
|
|
3202
|
+
|
|
3203
|
+
const char* rocksdb_externalfileingestioninfo_internal_file_path(
|
|
3204
|
+
const rocksdb_externalfileingestioninfo_t* info, size_t* size) {
|
|
3205
|
+
*size = info->rep.internal_file_path.size();
|
|
3206
|
+
return info->rep.internal_file_path.data();
|
|
3207
|
+
}
|
|
3208
|
+
|
|
3209
|
+
/* External write stall info */
|
|
3210
|
+
extern ROCKSDB_LIBRARY_API const char* rocksdb_writestallinfo_cf_name(
|
|
3211
|
+
const rocksdb_writestallinfo_t* info, size_t* size) {
|
|
3212
|
+
*size = info->rep.cf_name.size();
|
|
3213
|
+
return info->rep.cf_name.data();
|
|
3214
|
+
}
|
|
3215
|
+
|
|
3216
|
+
const rocksdb_writestallcondition_t* rocksdb_writestallinfo_cur(
|
|
3217
|
+
const rocksdb_writestallinfo_t* info) {
|
|
3218
|
+
return reinterpret_cast<const rocksdb_writestallcondition_t*>(
|
|
3219
|
+
&info->rep.condition.cur);
|
|
3220
|
+
}
|
|
3221
|
+
|
|
3222
|
+
const rocksdb_writestallcondition_t* rocksdb_writestallinfo_prev(
|
|
3223
|
+
const rocksdb_writestallinfo_t* info) {
|
|
3224
|
+
return reinterpret_cast<const rocksdb_writestallcondition_t*>(
|
|
3225
|
+
&info->rep.condition.prev);
|
|
3226
|
+
}
|
|
3227
|
+
|
|
3228
|
+
const char* rocksdb_memtableinfo_cf_name(const rocksdb_memtableinfo_t* info,
|
|
3229
|
+
size_t* size) {
|
|
3230
|
+
*size = info->rep.cf_name.size();
|
|
3231
|
+
return info->rep.cf_name.data();
|
|
3232
|
+
}
|
|
3233
|
+
|
|
3234
|
+
uint64_t rocksdb_memtableinfo_first_seqno(const rocksdb_memtableinfo_t* info) {
|
|
3235
|
+
return info->rep.first_seqno;
|
|
3236
|
+
}
|
|
3237
|
+
uint64_t rocksdb_memtableinfo_earliest_seqno(
|
|
3238
|
+
const rocksdb_memtableinfo_t* info) {
|
|
3239
|
+
return info->rep.earliest_seqno;
|
|
3240
|
+
}
|
|
3241
|
+
uint64_t rocksdb_memtableinfo_num_entries(const rocksdb_memtableinfo_t* info) {
|
|
3242
|
+
return info->rep.num_entries;
|
|
3243
|
+
}
|
|
3244
|
+
uint64_t rocksdb_memtableinfo_num_deletes(const rocksdb_memtableinfo_t* info) {
|
|
3245
|
+
return info->rep.num_deletes;
|
|
3246
|
+
}
|
|
3247
|
+
|
|
3248
|
+
/* event listener */
|
|
3249
|
+
|
|
3250
|
+
struct rocksdb_eventlistener_t : public EventListener {
|
|
3251
|
+
void* state_{};
|
|
3252
|
+
void (*destructor_)(void*){};
|
|
3253
|
+
void (*on_flush_begin)(void*, rocksdb_t*, const rocksdb_flushjobinfo_t*){};
|
|
3254
|
+
void (*on_flush_completed)(void*, rocksdb_t*,
|
|
3255
|
+
const rocksdb_flushjobinfo_t*){};
|
|
3256
|
+
void (*on_compaction_begin)(void*, rocksdb_t*,
|
|
3257
|
+
const rocksdb_compactionjobinfo_t*){};
|
|
3258
|
+
void (*on_compaction_completed)(void*, rocksdb_t*,
|
|
3259
|
+
const rocksdb_compactionjobinfo_t*){};
|
|
3260
|
+
void (*on_subcompaction_begin)(void*,
|
|
3261
|
+
const rocksdb_subcompactionjobinfo_t*){};
|
|
3262
|
+
void (*on_subcompaction_completed)(void*,
|
|
3263
|
+
const rocksdb_subcompactionjobinfo_t*){};
|
|
3264
|
+
void (*on_external_file_ingested)(
|
|
3265
|
+
void*, rocksdb_t*, const rocksdb_externalfileingestioninfo_t*){};
|
|
3266
|
+
void (*on_background_error)(void*, uint32_t, rocksdb_status_ptr_t*){};
|
|
3267
|
+
void (*on_stall_conditions_changed)(void*, const rocksdb_writestallinfo_t*){};
|
|
3268
|
+
void (*on_memtable_sealed)(void*, const rocksdb_memtableinfo_t*){};
|
|
3269
|
+
|
|
3270
|
+
rocksdb_eventlistener_t() = default;
|
|
3271
|
+
|
|
3272
|
+
rocksdb_eventlistener_t(const rocksdb_eventlistener_t&) = delete;
|
|
3273
|
+
rocksdb_eventlistener_t& operator=(const rocksdb_eventlistener_t&) = delete;
|
|
3274
|
+
rocksdb_eventlistener_t(rocksdb_eventlistener_t&&) = delete;
|
|
3275
|
+
rocksdb_eventlistener_t& operator=(rocksdb_eventlistener_t&&) = delete;
|
|
3276
|
+
|
|
3277
|
+
void OnFlushBegin(DB* db, const FlushJobInfo& info) override {
|
|
3278
|
+
rocksdb_t c_db = {db};
|
|
3279
|
+
on_flush_begin(state_, &c_db,
|
|
3280
|
+
reinterpret_cast<const rocksdb_flushjobinfo_t*>(&info));
|
|
3281
|
+
}
|
|
3282
|
+
|
|
3283
|
+
void OnFlushCompleted(DB* db, const FlushJobInfo& info) override {
|
|
3284
|
+
rocksdb_t c_db = {db};
|
|
3285
|
+
on_flush_completed(state_, &c_db,
|
|
3286
|
+
reinterpret_cast<const rocksdb_flushjobinfo_t*>(&info));
|
|
3287
|
+
}
|
|
3288
|
+
|
|
3289
|
+
void OnCompactionBegin(DB* db, const CompactionJobInfo& info) override {
|
|
3290
|
+
rocksdb_t c_db = {db};
|
|
3291
|
+
on_compaction_begin(
|
|
3292
|
+
state_, &c_db,
|
|
3293
|
+
reinterpret_cast<const rocksdb_compactionjobinfo_t*>(&info));
|
|
3294
|
+
}
|
|
3295
|
+
|
|
3296
|
+
void OnCompactionCompleted(DB* db, const CompactionJobInfo& info) override {
|
|
3297
|
+
rocksdb_t c_db = {db};
|
|
3298
|
+
on_compaction_completed(
|
|
3299
|
+
state_, &c_db,
|
|
3300
|
+
reinterpret_cast<const rocksdb_compactionjobinfo_t*>(&info));
|
|
3301
|
+
}
|
|
3302
|
+
|
|
3303
|
+
void OnSubcompactionBegin(const SubcompactionJobInfo& info) override {
|
|
3304
|
+
on_subcompaction_begin(
|
|
3305
|
+
state_, reinterpret_cast<const rocksdb_subcompactionjobinfo_t*>(&info));
|
|
3306
|
+
}
|
|
3307
|
+
|
|
3308
|
+
void OnSubcompactionCompleted(const SubcompactionJobInfo& info) override {
|
|
3309
|
+
on_subcompaction_completed(
|
|
3310
|
+
state_, reinterpret_cast<const rocksdb_subcompactionjobinfo_t*>(&info));
|
|
3311
|
+
}
|
|
3312
|
+
|
|
3313
|
+
void OnExternalFileIngested(DB* db,
|
|
3314
|
+
const ExternalFileIngestionInfo& info) override {
|
|
3315
|
+
rocksdb_t c_db = {db};
|
|
3316
|
+
on_external_file_ingested(
|
|
3317
|
+
state_, &c_db,
|
|
3318
|
+
reinterpret_cast<const rocksdb_externalfileingestioninfo_t*>(&info));
|
|
3319
|
+
}
|
|
3320
|
+
|
|
3321
|
+
void OnBackgroundError(BackgroundErrorReason reason,
|
|
3322
|
+
Status* status) override {
|
|
3323
|
+
rocksdb_status_ptr_t* s = new rocksdb_status_ptr_t;
|
|
3324
|
+
s->rep = status;
|
|
3325
|
+
on_background_error(state_, static_cast<uint32_t>(reason), s);
|
|
3326
|
+
delete s;
|
|
3327
|
+
}
|
|
3328
|
+
|
|
3329
|
+
void OnStallConditionsChanged(const WriteStallInfo& info) override {
|
|
3330
|
+
on_stall_conditions_changed(
|
|
3331
|
+
state_, reinterpret_cast<const rocksdb_writestallinfo_t*>(&info));
|
|
3332
|
+
}
|
|
3333
|
+
|
|
3334
|
+
void OnMemTableSealed(const MemTableInfo& info) override {
|
|
3335
|
+
on_memtable_sealed(state_,
|
|
3336
|
+
reinterpret_cast<const rocksdb_memtableinfo_t*>(&info));
|
|
3337
|
+
}
|
|
3338
|
+
|
|
3339
|
+
~rocksdb_eventlistener_t() override { destructor_(state_); }
|
|
3340
|
+
};
|
|
3341
|
+
|
|
3342
|
+
rocksdb_eventlistener_t* rocksdb_eventlistener_create(
|
|
3343
|
+
void* state_, void (*destructor_)(void*), on_flush_begin_cb on_flush_begin,
|
|
3344
|
+
on_flush_completed_cb on_flush_completed,
|
|
3345
|
+
on_compaction_begin_cb on_compaction_begin,
|
|
3346
|
+
on_compaction_completed_cb on_compaction_completed,
|
|
3347
|
+
on_subcompaction_begin_cb on_subcompaction_begin,
|
|
3348
|
+
on_subcompaction_completed_cb on_subcompaction_completed,
|
|
3349
|
+
on_external_file_ingested_cb on_external_file_ingested,
|
|
3350
|
+
on_background_error_cb on_background_error,
|
|
3351
|
+
on_stall_conditions_changed_cb on_stall_conditions_changed,
|
|
3352
|
+
on_memtable_sealed_cb on_memtable_sealed) {
|
|
3353
|
+
rocksdb_eventlistener_t* et = new rocksdb_eventlistener_t;
|
|
3354
|
+
et->state_ = state_;
|
|
3355
|
+
et->destructor_ = destructor_;
|
|
3356
|
+
et->on_flush_begin = on_flush_begin;
|
|
3357
|
+
et->on_flush_completed = on_flush_completed;
|
|
3358
|
+
et->on_compaction_begin = on_compaction_begin;
|
|
3359
|
+
et->on_compaction_completed = on_compaction_completed;
|
|
3360
|
+
et->on_subcompaction_begin = on_subcompaction_begin;
|
|
3361
|
+
et->on_subcompaction_completed = on_subcompaction_completed;
|
|
3362
|
+
et->on_external_file_ingested = on_external_file_ingested;
|
|
3363
|
+
et->on_background_error = on_background_error;
|
|
3364
|
+
et->on_stall_conditions_changed = on_stall_conditions_changed;
|
|
3365
|
+
et->on_memtable_sealed = on_memtable_sealed;
|
|
3366
|
+
return et;
|
|
3367
|
+
}
|
|
3368
|
+
|
|
3369
|
+
void rocksdb_eventlistener_destroy(rocksdb_eventlistener_t* t) { delete t; }
|
|
3370
|
+
|
|
3371
|
+
void rocksdb_options_add_eventlistener(rocksdb_options_t* opt,
|
|
3372
|
+
rocksdb_eventlistener_t* t) {
|
|
3373
|
+
opt->rep.listeners.emplace_back(std::shared_ptr<EventListener>(t));
|
|
3374
|
+
}
|
|
3375
|
+
|
|
2937
3376
|
rocksdb_cuckoo_table_options_t* rocksdb_cuckoo_options_create() {
|
|
2938
3377
|
return new rocksdb_cuckoo_table_options_t;
|
|
2939
3378
|
}
|
|
@@ -3299,6 +3738,26 @@ uint64_t rocksdb_options_get_periodic_compaction_seconds(
|
|
|
3299
3738
|
return opt->rep.periodic_compaction_seconds;
|
|
3300
3739
|
}
|
|
3301
3740
|
|
|
3741
|
+
void rocksdb_options_set_memtable_op_scan_flush_trigger(rocksdb_options_t* opt,
|
|
3742
|
+
uint32_t n) {
|
|
3743
|
+
opt->rep.memtable_op_scan_flush_trigger = n;
|
|
3744
|
+
}
|
|
3745
|
+
|
|
3746
|
+
uint32_t rocksdb_options_get_memtable_op_scan_flush_trigger(
|
|
3747
|
+
rocksdb_options_t* opt) {
|
|
3748
|
+
return opt->rep.memtable_op_scan_flush_trigger;
|
|
3749
|
+
}
|
|
3750
|
+
|
|
3751
|
+
void rocksdb_options_set_memtable_avg_op_scan_flush_trigger(
|
|
3752
|
+
rocksdb_options_t* opt, uint32_t n) {
|
|
3753
|
+
opt->rep.memtable_avg_op_scan_flush_trigger = n;
|
|
3754
|
+
}
|
|
3755
|
+
|
|
3756
|
+
uint32_t rocksdb_options_get_memtable_avg_op_scan_flush_trigger(
|
|
3757
|
+
rocksdb_options_t* opt) {
|
|
3758
|
+
return opt->rep.memtable_avg_op_scan_flush_trigger;
|
|
3759
|
+
}
|
|
3760
|
+
|
|
3302
3761
|
void rocksdb_options_enable_statistics(rocksdb_options_t* opt) {
|
|
3303
3762
|
opt->rep.statistics = ROCKSDB_NAMESPACE::CreateDBStatistics();
|
|
3304
3763
|
}
|
|
@@ -3808,16 +4267,6 @@ int rocksdb_options_get_min_write_buffer_number_to_merge(
|
|
|
3808
4267
|
return opt->rep.min_write_buffer_number_to_merge;
|
|
3809
4268
|
}
|
|
3810
4269
|
|
|
3811
|
-
void rocksdb_options_set_max_write_buffer_number_to_maintain(
|
|
3812
|
-
rocksdb_options_t* opt, int n) {
|
|
3813
|
-
opt->rep.max_write_buffer_number_to_maintain = n;
|
|
3814
|
-
}
|
|
3815
|
-
|
|
3816
|
-
int rocksdb_options_get_max_write_buffer_number_to_maintain(
|
|
3817
|
-
rocksdb_options_t* opt) {
|
|
3818
|
-
return opt->rep.max_write_buffer_number_to_maintain;
|
|
3819
|
-
}
|
|
3820
|
-
|
|
3821
4270
|
void rocksdb_options_set_max_write_buffer_size_to_maintain(
|
|
3822
4271
|
rocksdb_options_t* opt, int64_t n) {
|
|
3823
4272
|
opt->rep.max_write_buffer_size_to_maintain = n;
|
|
@@ -4336,6 +4785,8 @@ uint64_t rocksdb_perfcontext_metric(rocksdb_perfcontext_t* context,
|
|
|
4336
4785
|
return rep->internal_recent_skipped_count;
|
|
4337
4786
|
case rocksdb_internal_merge_count:
|
|
4338
4787
|
return rep->internal_merge_count;
|
|
4788
|
+
case rocksdb_internal_merge_point_lookup_count:
|
|
4789
|
+
return rep->internal_merge_point_lookup_count;
|
|
4339
4790
|
case rocksdb_get_snapshot_time:
|
|
4340
4791
|
return rep->get_snapshot_time;
|
|
4341
4792
|
case rocksdb_get_from_memtable_time:
|
|
@@ -5000,6 +5451,35 @@ int rocksdb_compactoptions_get_target_level(rocksdb_compactoptions_t* opt) {
|
|
|
5000
5451
|
return opt->rep.target_level;
|
|
5001
5452
|
}
|
|
5002
5453
|
|
|
5454
|
+
void rocksdb_compactoptions_set_target_path_id(rocksdb_compactoptions_t* opt,
|
|
5455
|
+
int n) {
|
|
5456
|
+
opt->rep.target_path_id = n;
|
|
5457
|
+
}
|
|
5458
|
+
|
|
5459
|
+
int rocksdb_compactoptions_get_target_path_id(rocksdb_compactoptions_t* opt) {
|
|
5460
|
+
return opt->rep.target_path_id;
|
|
5461
|
+
}
|
|
5462
|
+
|
|
5463
|
+
void rocksdb_compactoptions_set_allow_write_stall(rocksdb_compactoptions_t* opt,
|
|
5464
|
+
unsigned char v) {
|
|
5465
|
+
opt->rep.allow_write_stall = v;
|
|
5466
|
+
}
|
|
5467
|
+
|
|
5468
|
+
unsigned char rocksdb_compactoptions_get_allow_write_stall(
|
|
5469
|
+
rocksdb_compactoptions_t* opt) {
|
|
5470
|
+
return opt->rep.allow_write_stall;
|
|
5471
|
+
}
|
|
5472
|
+
|
|
5473
|
+
void rocksdb_compactoptions_set_max_subcompactions(
|
|
5474
|
+
rocksdb_compactoptions_t* opt, int n) {
|
|
5475
|
+
opt->rep.max_subcompactions = n;
|
|
5476
|
+
}
|
|
5477
|
+
|
|
5478
|
+
int rocksdb_compactoptions_get_max_subcompactions(
|
|
5479
|
+
rocksdb_compactoptions_t* opt) {
|
|
5480
|
+
return opt->rep.max_subcompactions;
|
|
5481
|
+
}
|
|
5482
|
+
|
|
5003
5483
|
void rocksdb_compactoptions_set_full_history_ts_low(
|
|
5004
5484
|
rocksdb_compactoptions_t* opt, char* ts, size_t tslen) {
|
|
5005
5485
|
if (ts == nullptr) {
|
|
@@ -5214,6 +5694,67 @@ ROCKSDB_LIBRARY_API void rocksdb_write_buffer_manager_set_allow_stall(
|
|
|
5214
5694
|
wbm->rep->SetAllowStall(new_allow_stall);
|
|
5215
5695
|
}
|
|
5216
5696
|
|
|
5697
|
+
rocksdb_sst_file_manager_t* rocksdb_sst_file_manager_create(
|
|
5698
|
+
rocksdb_env_t* env) {
|
|
5699
|
+
rocksdb_sst_file_manager_t* sfm = new rocksdb_sst_file_manager_t;
|
|
5700
|
+
sfm->rep.reset(ROCKSDB_NAMESPACE::NewSstFileManager(env->rep));
|
|
5701
|
+
return sfm;
|
|
5702
|
+
}
|
|
5703
|
+
|
|
5704
|
+
void rocksdb_sst_file_manager_destroy(rocksdb_sst_file_manager_t* sfm) {
|
|
5705
|
+
delete sfm;
|
|
5706
|
+
}
|
|
5707
|
+
|
|
5708
|
+
void rocksdb_sst_file_manager_set_max_allowed_space_usage(
|
|
5709
|
+
rocksdb_sst_file_manager_t* sfm, uint64_t max_allowed_space) {
|
|
5710
|
+
sfm->rep->SetMaxAllowedSpaceUsage(max_allowed_space);
|
|
5711
|
+
}
|
|
5712
|
+
|
|
5713
|
+
void rocksdb_sst_file_manager_set_compaction_buffer_size(
|
|
5714
|
+
rocksdb_sst_file_manager_t* sfm, uint64_t compaction_buffer_size) {
|
|
5715
|
+
sfm->rep->SetCompactionBufferSize(compaction_buffer_size);
|
|
5716
|
+
}
|
|
5717
|
+
|
|
5718
|
+
bool rocksdb_sst_file_manager_is_max_allowed_space_reached(
|
|
5719
|
+
rocksdb_sst_file_manager_t* sfm) {
|
|
5720
|
+
return sfm->rep->IsMaxAllowedSpaceReached();
|
|
5721
|
+
}
|
|
5722
|
+
|
|
5723
|
+
bool rocksdb_sst_file_manager_is_max_allowed_space_reached_including_compactions(
|
|
5724
|
+
rocksdb_sst_file_manager_t* sfm) {
|
|
5725
|
+
return sfm->rep->IsMaxAllowedSpaceReachedIncludingCompactions();
|
|
5726
|
+
}
|
|
5727
|
+
|
|
5728
|
+
uint64_t rocksdb_sst_file_manager_get_total_size(
|
|
5729
|
+
rocksdb_sst_file_manager_t* sfm) {
|
|
5730
|
+
return sfm->rep->GetTotalSize();
|
|
5731
|
+
}
|
|
5732
|
+
|
|
5733
|
+
int64_t rocksdb_sst_file_manager_get_delete_rate_bytes_per_second(
|
|
5734
|
+
rocksdb_sst_file_manager_t* sfm) {
|
|
5735
|
+
return sfm->rep->GetDeleteRateBytesPerSecond();
|
|
5736
|
+
}
|
|
5737
|
+
|
|
5738
|
+
void rocksdb_sst_file_manager_set_delete_rate_bytes_per_second(
|
|
5739
|
+
rocksdb_sst_file_manager_t* sfm, int64_t delete_rate) {
|
|
5740
|
+
return sfm->rep->SetDeleteRateBytesPerSecond(delete_rate);
|
|
5741
|
+
}
|
|
5742
|
+
|
|
5743
|
+
double rocksdb_sst_file_manager_get_max_trash_db_ratio(
|
|
5744
|
+
rocksdb_sst_file_manager_t* sfm) {
|
|
5745
|
+
return sfm->rep->GetMaxTrashDBRatio();
|
|
5746
|
+
}
|
|
5747
|
+
|
|
5748
|
+
void rocksdb_sst_file_manager_set_max_trash_db_ratio(
|
|
5749
|
+
rocksdb_sst_file_manager_t* sfm, double ratio) {
|
|
5750
|
+
return sfm->rep->SetMaxTrashDBRatio(ratio);
|
|
5751
|
+
}
|
|
5752
|
+
|
|
5753
|
+
uint64_t rocksdb_sst_file_manager_get_total_trash_size(
|
|
5754
|
+
rocksdb_sst_file_manager_t* sfm) {
|
|
5755
|
+
return sfm->rep->GetTotalTrashSize();
|
|
5756
|
+
}
|
|
5757
|
+
|
|
5217
5758
|
rocksdb_dbpath_t* rocksdb_dbpath_create(const char* path,
|
|
5218
5759
|
uint64_t target_size) {
|
|
5219
5760
|
rocksdb_dbpath_t* result = new rocksdb_dbpath_t;
|