@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
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
#include "rocksdb/iterator.h"
|
|
23
23
|
#include "rocksdb/listener.h"
|
|
24
24
|
#include "rocksdb/metadata.h"
|
|
25
|
+
#include "rocksdb/multi_scan.h"
|
|
25
26
|
#include "rocksdb/options.h"
|
|
26
27
|
#include "rocksdb/snapshot.h"
|
|
27
28
|
#include "rocksdb/sst_file_writer.h"
|
|
@@ -30,14 +31,10 @@
|
|
|
30
31
|
#include "rocksdb/types.h"
|
|
31
32
|
#include "rocksdb/user_write_callback.h"
|
|
32
33
|
#include "rocksdb/utilities/table_properties_collectors.h"
|
|
34
|
+
#include "rocksdb/utilities/write_batch_with_index.h"
|
|
33
35
|
#include "rocksdb/version.h"
|
|
34
36
|
#include "rocksdb/wide_columns.h"
|
|
35
37
|
|
|
36
|
-
#ifdef _WIN32
|
|
37
|
-
// Windows API macro interference
|
|
38
|
-
#undef DeleteFile
|
|
39
|
-
#endif
|
|
40
|
-
|
|
41
38
|
#if defined(__GNUC__) || defined(__clang__)
|
|
42
39
|
#define ROCKSDB_DEPRECATED_FUNC __attribute__((__deprecated__))
|
|
43
40
|
#elif _WIN32
|
|
@@ -101,43 +98,6 @@ class ColumnFamilyHandle {
|
|
|
101
98
|
static const int kMajorVersion = __ROCKSDB_MAJOR__;
|
|
102
99
|
static const int kMinorVersion = __ROCKSDB_MINOR__;
|
|
103
100
|
|
|
104
|
-
// A range of keys
|
|
105
|
-
struct Range {
|
|
106
|
-
// In case of user_defined timestamp, if enabled, `start` and `limit` should
|
|
107
|
-
// point to key without timestamp part.
|
|
108
|
-
Slice start;
|
|
109
|
-
Slice limit;
|
|
110
|
-
|
|
111
|
-
Range() {}
|
|
112
|
-
Range(const Slice& s, const Slice& l) : start(s), limit(l) {}
|
|
113
|
-
};
|
|
114
|
-
|
|
115
|
-
struct RangePtr {
|
|
116
|
-
// In case of user_defined timestamp, if enabled, `start` and `limit` should
|
|
117
|
-
// point to key without timestamp part.
|
|
118
|
-
const Slice* start;
|
|
119
|
-
const Slice* limit;
|
|
120
|
-
|
|
121
|
-
RangePtr() : start(nullptr), limit(nullptr) {}
|
|
122
|
-
RangePtr(const Slice* s, const Slice* l) : start(s), limit(l) {}
|
|
123
|
-
};
|
|
124
|
-
|
|
125
|
-
// It is valid that files_checksums and files_checksum_func_names are both
|
|
126
|
-
// empty (no checksum information is provided for ingestion). Otherwise,
|
|
127
|
-
// their sizes should be the same as external_files. The file order should
|
|
128
|
-
// be the same in three vectors and guaranteed by the caller.
|
|
129
|
-
// Note that, we assume the temperatures of this batch of files to be
|
|
130
|
-
// ingested are the same.
|
|
131
|
-
struct IngestExternalFileArg {
|
|
132
|
-
ColumnFamilyHandle* column_family = nullptr;
|
|
133
|
-
std::vector<std::string> external_files;
|
|
134
|
-
IngestExternalFileOptions options;
|
|
135
|
-
std::vector<std::string> files_checksums;
|
|
136
|
-
std::vector<std::string> files_checksum_func_names;
|
|
137
|
-
// A hint as to the temperature for *reading* the files to be ingested.
|
|
138
|
-
Temperature file_temperature = Temperature::kUnknown;
|
|
139
|
-
};
|
|
140
|
-
|
|
141
101
|
struct GetMergeOperandsOptions {
|
|
142
102
|
using ContinueCallback = std::function<bool(Slice)>;
|
|
143
103
|
|
|
@@ -184,7 +144,15 @@ class DB {
|
|
|
184
144
|
//
|
|
185
145
|
// Caller must delete *dbptr when it is no longer needed.
|
|
186
146
|
static Status Open(const Options& options, const std::string& name,
|
|
187
|
-
DB
|
|
147
|
+
std::unique_ptr<DB>* dbptr);
|
|
148
|
+
// DEPRECATED: raw pointer variant
|
|
149
|
+
static Status Open(const Options& options, const std::string& name,
|
|
150
|
+
DB** dbptr) {
|
|
151
|
+
std::unique_ptr<DB> smart_ptr;
|
|
152
|
+
Status s = Open(options, name, &smart_ptr);
|
|
153
|
+
*dbptr = smart_ptr.release();
|
|
154
|
+
return s;
|
|
155
|
+
}
|
|
188
156
|
|
|
189
157
|
// Open DB with column families.
|
|
190
158
|
// db_options specify database specific options
|
|
@@ -202,7 +170,17 @@ class DB {
|
|
|
202
170
|
// DestroyColumnFamilyHandle() with all the handles.
|
|
203
171
|
static Status Open(const DBOptions& db_options, const std::string& name,
|
|
204
172
|
const std::vector<ColumnFamilyDescriptor>& column_families,
|
|
205
|
-
std::vector<ColumnFamilyHandle*>* handles,
|
|
173
|
+
std::vector<ColumnFamilyHandle*>* handles,
|
|
174
|
+
std::unique_ptr<DB>* dbptr);
|
|
175
|
+
// DEPRECATED: raw pointer variant
|
|
176
|
+
static Status Open(const DBOptions& db_options, const std::string& name,
|
|
177
|
+
const std::vector<ColumnFamilyDescriptor>& column_families,
|
|
178
|
+
std::vector<ColumnFamilyHandle*>* handles, DB** dbptr) {
|
|
179
|
+
std::unique_ptr<DB> smart_ptr;
|
|
180
|
+
Status s = Open(db_options, name, column_families, handles, &smart_ptr);
|
|
181
|
+
*dbptr = smart_ptr.release();
|
|
182
|
+
return s;
|
|
183
|
+
}
|
|
206
184
|
|
|
207
185
|
// OpenForReadOnly() creates a Read-only instance that supports reads alone.
|
|
208
186
|
//
|
|
@@ -219,8 +197,18 @@ class DB {
|
|
|
219
197
|
// Open the database for read only.
|
|
220
198
|
//
|
|
221
199
|
static Status OpenForReadOnly(const Options& options, const std::string& name,
|
|
222
|
-
DB
|
|
200
|
+
std::unique_ptr<DB>* dbptr,
|
|
223
201
|
bool error_if_wal_file_exists = false);
|
|
202
|
+
// DEPRECATED: raw pointer variant
|
|
203
|
+
static Status OpenForReadOnly(const Options& options, const std::string& name,
|
|
204
|
+
DB** dbptr,
|
|
205
|
+
bool error_if_wal_file_exists = false) {
|
|
206
|
+
std::unique_ptr<DB> smart_ptr;
|
|
207
|
+
Status s =
|
|
208
|
+
OpenForReadOnly(options, name, &smart_ptr, error_if_wal_file_exists);
|
|
209
|
+
*dbptr = smart_ptr.release();
|
|
210
|
+
return s;
|
|
211
|
+
}
|
|
224
212
|
|
|
225
213
|
// Open the database for read only with column families.
|
|
226
214
|
//
|
|
@@ -232,8 +220,20 @@ class DB {
|
|
|
232
220
|
static Status OpenForReadOnly(
|
|
233
221
|
const DBOptions& db_options, const std::string& name,
|
|
234
222
|
const std::vector<ColumnFamilyDescriptor>& column_families,
|
|
235
|
-
std::vector<ColumnFamilyHandle*>* handles, DB
|
|
223
|
+
std::vector<ColumnFamilyHandle*>* handles, std::unique_ptr<DB>* dbptr,
|
|
236
224
|
bool error_if_wal_file_exists = false);
|
|
225
|
+
// DEPRECATED: raw pointer variant
|
|
226
|
+
static Status OpenForReadOnly(
|
|
227
|
+
const DBOptions& db_options, const std::string& name,
|
|
228
|
+
const std::vector<ColumnFamilyDescriptor>& column_families,
|
|
229
|
+
std::vector<ColumnFamilyHandle*>* handles, DB** dbptr,
|
|
230
|
+
bool error_if_wal_file_exists = false) {
|
|
231
|
+
std::unique_ptr<DB> smart_ptr;
|
|
232
|
+
Status s = OpenForReadOnly(db_options, name, column_families, handles,
|
|
233
|
+
&smart_ptr, error_if_wal_file_exists);
|
|
234
|
+
*dbptr = smart_ptr.release();
|
|
235
|
+
return s;
|
|
236
|
+
}
|
|
237
237
|
|
|
238
238
|
// OpenAsSecondary() creates a secondary instance that supports read-only
|
|
239
239
|
// operations and supports dynamic catch up with the primary (through a
|
|
@@ -259,8 +259,24 @@ class DB {
|
|
|
259
259
|
// delete it after use.
|
|
260
260
|
//
|
|
261
261
|
// Return OK on success, non-OK on failures.
|
|
262
|
+
//
|
|
263
|
+
// WARNING: Secondary databases cannot read shared SST files that have been
|
|
264
|
+
// truncated in the primary database. To avoid compatibility issues, users
|
|
265
|
+
// should refrain from using features in the primary database that can cause
|
|
266
|
+
// truncation, such as setting `rate_bytes_per_sec > 0` and
|
|
267
|
+
// `bytes_max_delete_chunk > 0` when invoking RocksDB's implementation of
|
|
268
|
+
// `NewSstFileManager()`.
|
|
262
269
|
static Status OpenAsSecondary(const Options& options, const std::string& name,
|
|
263
|
-
const std::string& secondary_path,
|
|
270
|
+
const std::string& secondary_path,
|
|
271
|
+
std::unique_ptr<DB>* dbptr);
|
|
272
|
+
// DEPRECATED: raw pointer variant
|
|
273
|
+
static Status OpenAsSecondary(const Options& options, const std::string& name,
|
|
274
|
+
const std::string& secondary_path, DB** dbptr) {
|
|
275
|
+
std::unique_ptr<DB> smart_ptr;
|
|
276
|
+
Status s = OpenAsSecondary(options, name, secondary_path, &smart_ptr);
|
|
277
|
+
*dbptr = smart_ptr.release();
|
|
278
|
+
return s;
|
|
279
|
+
}
|
|
264
280
|
|
|
265
281
|
// Open DB as secondary instance with specified column families
|
|
266
282
|
//
|
|
@@ -298,7 +314,19 @@ class DB {
|
|
|
298
314
|
const DBOptions& db_options, const std::string& name,
|
|
299
315
|
const std::string& secondary_path,
|
|
300
316
|
const std::vector<ColumnFamilyDescriptor>& column_families,
|
|
301
|
-
std::vector<ColumnFamilyHandle*>* handles, DB
|
|
317
|
+
std::vector<ColumnFamilyHandle*>* handles, std::unique_ptr<DB>* dbptr);
|
|
318
|
+
// DEPRECATED: raw pointer variant
|
|
319
|
+
static Status OpenAsSecondary(
|
|
320
|
+
const DBOptions& db_options, const std::string& name,
|
|
321
|
+
const std::string& secondary_path,
|
|
322
|
+
const std::vector<ColumnFamilyDescriptor>& column_families,
|
|
323
|
+
std::vector<ColumnFamilyHandle*>* handles, DB** dbptr) {
|
|
324
|
+
std::unique_ptr<DB> smart_ptr;
|
|
325
|
+
Status s = OpenAsSecondary(db_options, name, secondary_path,
|
|
326
|
+
column_families, handles, &smart_ptr);
|
|
327
|
+
*dbptr = smart_ptr.release();
|
|
328
|
+
return s;
|
|
329
|
+
}
|
|
302
330
|
|
|
303
331
|
// EXPERIMENTAL
|
|
304
332
|
|
|
@@ -349,8 +377,20 @@ class DB {
|
|
|
349
377
|
static Status OpenAndTrimHistory(
|
|
350
378
|
const DBOptions& db_options, const std::string& dbname,
|
|
351
379
|
const std::vector<ColumnFamilyDescriptor>& column_families,
|
|
352
|
-
std::vector<ColumnFamilyHandle*>* handles, DB
|
|
380
|
+
std::vector<ColumnFamilyHandle*>* handles, std::unique_ptr<DB>* dbptr,
|
|
353
381
|
std::string trim_ts);
|
|
382
|
+
// DEPRECATED: raw pointer variant
|
|
383
|
+
static Status OpenAndTrimHistory(
|
|
384
|
+
const DBOptions& db_options, const std::string& dbname,
|
|
385
|
+
const std::vector<ColumnFamilyDescriptor>& column_families,
|
|
386
|
+
std::vector<ColumnFamilyHandle*>* handles, DB** dbptr,
|
|
387
|
+
std::string trim_ts) {
|
|
388
|
+
std::unique_ptr<DB> smart_ptr;
|
|
389
|
+
Status s = OpenAndTrimHistory(db_options, dbname, column_families, handles,
|
|
390
|
+
&smart_ptr, trim_ts);
|
|
391
|
+
*dbptr = smart_ptr.release();
|
|
392
|
+
return s;
|
|
393
|
+
}
|
|
354
394
|
|
|
355
395
|
// Manually, synchronously attempt to resume DB writes after a write failure
|
|
356
396
|
// to the underlying filesystem. See
|
|
@@ -578,7 +618,7 @@ class DB {
|
|
|
578
618
|
const Slice& /*key*/, const Slice& /*ts*/,
|
|
579
619
|
const Slice& /*value*/);
|
|
580
620
|
|
|
581
|
-
// Apply the specified updates to the database.
|
|
621
|
+
// Apply the specified updates atomically to the database.
|
|
582
622
|
// If `updates` contains no update, WAL will still be synced if
|
|
583
623
|
// options.sync=true.
|
|
584
624
|
// Returns OK on success, non-OK on failure.
|
|
@@ -594,6 +634,21 @@ class DB {
|
|
|
594
634
|
"WriteWithCallback not implemented for this interface.");
|
|
595
635
|
}
|
|
596
636
|
|
|
637
|
+
// EXPERIMENTAL, subject to change
|
|
638
|
+
// Ingest a WriteBatchWithIndex into DB, bypassing memtable writes for better
|
|
639
|
+
// write performance. Useful when there is a large number of updates
|
|
640
|
+
// in the write batch.
|
|
641
|
+
// The WriteBatchWithIndex must be created with overwrite_key=true.
|
|
642
|
+
// Currently this requires WriteOptions::disableWAL=true.
|
|
643
|
+
// The following options are currently not supported:
|
|
644
|
+
// - unordered_write
|
|
645
|
+
// - enable_pipelined_write
|
|
646
|
+
virtual Status IngestWriteBatchWithIndex(
|
|
647
|
+
const WriteOptions& /*options*/,
|
|
648
|
+
std::shared_ptr<WriteBatchWithIndex> /*wbwi*/) {
|
|
649
|
+
return Status::NotSupported("IngestWriteBatchWithIndex not implemented.");
|
|
650
|
+
}
|
|
651
|
+
|
|
597
652
|
// If the column family specified by "column_family" contains an entry for
|
|
598
653
|
// "key", return the corresponding value in "*value". If the entry is a plain
|
|
599
654
|
// key-value, return the value as-is; if it is a wide-column entity, return
|
|
@@ -696,8 +751,9 @@ class DB {
|
|
|
696
751
|
// Populates the `merge_operands` array with all the merge operands in the DB
|
|
697
752
|
// for `key`, or a customizable suffix of merge operands when
|
|
698
753
|
// `GetMergeOperandsOptions::continue_cb` is set. The `merge_operands` array
|
|
699
|
-
// will be populated in the order of insertion
|
|
700
|
-
// populated in `merge_operands` will be assigned to
|
|
754
|
+
// will be populated in the order of insertion (older insertions first). The
|
|
755
|
+
// number of entries populated in `merge_operands` will be assigned to
|
|
756
|
+
// `*number_of_operands`.
|
|
701
757
|
//
|
|
702
758
|
// If the number of merge operands to return for `key` is greater than
|
|
703
759
|
// `merge_operands_options.expected_max_number_of_operands`,
|
|
@@ -712,6 +768,9 @@ class DB {
|
|
|
712
768
|
// The caller should delete or `Reset()` the `merge_operands` entries when
|
|
713
769
|
// they are no longer needed. All `merge_operands` entries must be destroyed
|
|
714
770
|
// or `Reset()` before this DB is closed or destroyed.
|
|
771
|
+
// OK status is returned if any merge operand is found.
|
|
772
|
+
// NotFound status is returned if no merge operand is found.
|
|
773
|
+
// Error status is returned if there is an error.
|
|
715
774
|
virtual Status GetMergeOperands(
|
|
716
775
|
const ReadOptions& options, ColumnFamilyHandle* column_family,
|
|
717
776
|
const Slice& key, PinnableSlice* merge_operands,
|
|
@@ -1031,6 +1090,18 @@ class DB {
|
|
|
1031
1090
|
const ReadOptions& options,
|
|
1032
1091
|
const std::vector<ColumnFamilyHandle*>& column_families) = 0;
|
|
1033
1092
|
|
|
1093
|
+
// Get an iterator that scans multiple key ranges. The scan ranges should
|
|
1094
|
+
// be in increasing order of start key. See multi_scan_iterator.h for more
|
|
1095
|
+
// details.
|
|
1096
|
+
virtual std::unique_ptr<MultiScan> NewMultiScan(
|
|
1097
|
+
const ReadOptions& /*options*/, ColumnFamilyHandle* /*column_family*/,
|
|
1098
|
+
const std::vector<ScanOptions>& /*scan_opts*/) {
|
|
1099
|
+
std::unique_ptr<Iterator> iter(NewErrorIterator(Status::NotSupported()));
|
|
1100
|
+
std::unique_ptr<MultiScan> ms_iter =
|
|
1101
|
+
std::make_unique<MultiScan>(std::move(iter));
|
|
1102
|
+
return ms_iter;
|
|
1103
|
+
}
|
|
1104
|
+
|
|
1034
1105
|
// Return a handle to the current DB state. Iterators created with
|
|
1035
1106
|
// this handle will all observe a stable snapshot of the current DB
|
|
1036
1107
|
// state. The caller must call ReleaseSnapshot(result) when the
|
|
@@ -1142,6 +1213,10 @@ class DB {
|
|
|
1142
1213
|
// running compactions.
|
|
1143
1214
|
static const std::string kNumRunningCompactions;
|
|
1144
1215
|
|
|
1216
|
+
// "rocksdb.num-running-compaction-sorted-runs" - returns the number of
|
|
1217
|
+
// sorted runs being processed by currently running compactions.
|
|
1218
|
+
static const std::string kNumRunningCompactionSortedRuns;
|
|
1219
|
+
|
|
1145
1220
|
// "rocksdb.background-errors" - returns accumulated number of background
|
|
1146
1221
|
// errors.
|
|
1147
1222
|
static const std::string kBackgroundErrors;
|
|
@@ -1612,9 +1687,12 @@ class DB {
|
|
|
1612
1687
|
virtual int NumberLevels(ColumnFamilyHandle* column_family) = 0;
|
|
1613
1688
|
virtual int NumberLevels() { return NumberLevels(DefaultColumnFamily()); }
|
|
1614
1689
|
|
|
1690
|
+
// DEPRECATED:
|
|
1615
1691
|
// Maximum level to which a new compacted memtable is pushed if it
|
|
1616
1692
|
// does not create overlap.
|
|
1617
|
-
virtual int MaxMemCompactionLevel(ColumnFamilyHandle* column_family)
|
|
1693
|
+
virtual int MaxMemCompactionLevel(ColumnFamilyHandle* /*column_family*/) {
|
|
1694
|
+
return 0;
|
|
1695
|
+
}
|
|
1618
1696
|
virtual int MaxMemCompactionLevel() {
|
|
1619
1697
|
return MaxMemCompactionLevel(DefaultColumnFamily());
|
|
1620
1698
|
}
|
|
@@ -1720,6 +1798,25 @@ class DB {
|
|
|
1720
1798
|
virtual Status GetFullHistoryTsLow(ColumnFamilyHandle* column_family,
|
|
1721
1799
|
std::string* ts_low) = 0;
|
|
1722
1800
|
|
|
1801
|
+
// EXPERIMENTAL
|
|
1802
|
+
// Get the newest timestamp of the column family. This is only for when the
|
|
1803
|
+
// column family enables user defined timestamp and when timestamps are not
|
|
1804
|
+
// persisted in SST files, a.k.a `persist_user_defined_timestamps=false`.
|
|
1805
|
+
// This checks the mutable memtable, the immutable memtable and the SST files,
|
|
1806
|
+
// and returns the first newest user defined timestamp found.
|
|
1807
|
+
// When user defined timestamp is not persisted in SST files, metadata in
|
|
1808
|
+
// MANIFEST tracks the most recently seen timestamp for SST files, so the
|
|
1809
|
+
// newest timestamp in SST files can be found.
|
|
1810
|
+
// OK status is returned if finding the newest timestamp succeeds, if
|
|
1811
|
+
// `newest_timestamp` is empty, it means the column family hasn't seen any
|
|
1812
|
+
// timestamp. The returned timestamp is encoded, util method `DecodeU64Ts` can
|
|
1813
|
+
// be used to decode it into uint64_t.
|
|
1814
|
+
// User-defined timestamp is required to be increasing per key, the return
|
|
1815
|
+
// value of this API would be most useful if the user-defined timestamp is
|
|
1816
|
+
// monotonically increasing across keys.
|
|
1817
|
+
virtual Status GetNewestUserDefinedTimestamp(
|
|
1818
|
+
ColumnFamilyHandle* column_family, std::string* newest_timestamp) = 0;
|
|
1819
|
+
|
|
1723
1820
|
// Suspend deleting obsolete files. Compactions will continue to occur,
|
|
1724
1821
|
// but no obsolete files will be deleted. To resume file deletions, each
|
|
1725
1822
|
// call to DisableFileDeletions() must be matched by a subsequent call to
|
|
@@ -1768,21 +1865,6 @@ class DB {
|
|
|
1768
1865
|
const TransactionLogIterator::ReadOptions& read_options =
|
|
1769
1866
|
TransactionLogIterator::ReadOptions()) = 0;
|
|
1770
1867
|
|
|
1771
|
-
// Windows API macro interference
|
|
1772
|
-
#undef DeleteFile
|
|
1773
|
-
// WARNING: This API is planned for removal in RocksDB 7.0 since it does not
|
|
1774
|
-
// operate at the proper level of abstraction for a key-value store, and its
|
|
1775
|
-
// contract/restrictions are poorly documented. For example, it returns non-OK
|
|
1776
|
-
// `Status` for non-bottommost files and files undergoing compaction. Since we
|
|
1777
|
-
// do not plan to maintain it, the contract will likely remain underspecified
|
|
1778
|
-
// until its removal. Any user is encouraged to read the implementation
|
|
1779
|
-
// carefully and migrate away from it when possible.
|
|
1780
|
-
//
|
|
1781
|
-
// Delete the file name from the db directory and update the internal state to
|
|
1782
|
-
// reflect that. Supports deletion of sst and log files only. 'name' must be
|
|
1783
|
-
// path relative to the db directory. eg. 000001.sst, /archive/000003.log
|
|
1784
|
-
virtual Status DeleteFile(std::string name) = 0;
|
|
1785
|
-
|
|
1786
1868
|
// Obtains a list of all live table (SST) files and how they fit into the
|
|
1787
1869
|
// LSM-trees, such as column family, level, key range, etc.
|
|
1788
1870
|
// This builds a de-normalized form of GetAllColumnFamilyMetaData().
|
|
@@ -1846,12 +1928,12 @@ class DB {
|
|
|
1846
1928
|
// Retrieve information about the current wal file
|
|
1847
1929
|
//
|
|
1848
1930
|
// Note that the log might have rolled after this call in which case
|
|
1849
|
-
// the
|
|
1931
|
+
// the current_wal_file would not point to the current log file.
|
|
1850
1932
|
//
|
|
1851
|
-
// Additionally, for the sake of optimization
|
|
1933
|
+
// Additionally, for the sake of optimization current_wal_file->StartSequence
|
|
1852
1934
|
// would always be set to 0
|
|
1853
1935
|
virtual Status GetCurrentWalFile(
|
|
1854
|
-
std::unique_ptr<WalFile>*
|
|
1936
|
+
std::unique_ptr<WalFile>* current_wal_file) = 0;
|
|
1855
1937
|
|
|
1856
1938
|
// IngestExternalFile() will load a list of external SST files (1) into the DB
|
|
1857
1939
|
// Two primary modes are supported:
|
|
@@ -2013,14 +2095,11 @@ class DB {
|
|
|
2013
2095
|
ColumnFamilyHandle* column_family, const Range* range, std::size_t n,
|
|
2014
2096
|
TablePropertiesCollection* props) = 0;
|
|
2015
2097
|
|
|
2016
|
-
// Get the table properties of files
|
|
2017
|
-
virtual Status
|
|
2018
|
-
ColumnFamilyHandle*
|
|
2019
|
-
std::vector<
|
|
2020
|
-
|
|
2021
|
-
return Status::NotSupported(
|
|
2022
|
-
"GetPropertiesOfTablesForLevels() is not implemented.");
|
|
2023
|
-
}
|
|
2098
|
+
// Get the table properties of files by level.
|
|
2099
|
+
virtual Status GetPropertiesOfTablesByLevel(
|
|
2100
|
+
ColumnFamilyHandle* column_family,
|
|
2101
|
+
std::vector<std::unique_ptr<TablePropertiesCollection>>*
|
|
2102
|
+
props_by_level) = 0;
|
|
2024
2103
|
|
|
2025
2104
|
virtual Status SuggestCompactRange(ColumnFamilyHandle* /*column_family*/,
|
|
2026
2105
|
const Slice* /*begin*/,
|
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
#pragma once
|
|
6
6
|
|
|
7
7
|
#include "rocksdb/rocksdb_namespace.h"
|
|
8
|
+
#include "rocksdb/tool_hooks.h"
|
|
8
9
|
|
|
9
10
|
namespace ROCKSDB_NAMESPACE {
|
|
10
|
-
int db_bench_tool(int argc, char** argv);
|
|
11
|
+
int db_bench_tool(int argc, char** argv, ToolHooks& hooks = defaultHooks);
|
|
11
12
|
} // namespace ROCKSDB_NAMESPACE
|
|
@@ -133,9 +133,6 @@ struct EnvOptions {
|
|
|
133
133
|
// See DBOptions doc
|
|
134
134
|
size_t compaction_readahead_size = 0;
|
|
135
135
|
|
|
136
|
-
// See DBOptions doc
|
|
137
|
-
size_t random_access_max_buffer_size = 0;
|
|
138
|
-
|
|
139
136
|
// See DBOptions doc
|
|
140
137
|
size_t writable_file_max_buffer_size = 1024 * 1024;
|
|
141
138
|
|
|
@@ -458,10 +455,12 @@ class Env : public Customizable {
|
|
|
458
455
|
kVerifyFileChecksums = 7,
|
|
459
456
|
kGetEntity = 8,
|
|
460
457
|
kMultiGetEntity = 9,
|
|
461
|
-
|
|
458
|
+
kGetFileChecksumsFromCurrentManifest = 10,
|
|
462
459
|
kUnknown, // Keep last for easy array of non-unknowns
|
|
463
460
|
};
|
|
464
461
|
|
|
462
|
+
static std::string IOActivityToString(IOActivity activity);
|
|
463
|
+
|
|
465
464
|
// Arrange to run "(*function)(arg)" once in a background thread, in
|
|
466
465
|
// the thread pool specified by pri. By default, jobs go to the 'LOW'
|
|
467
466
|
// priority thread pool.
|
|
@@ -630,7 +629,7 @@ class Env : public Customizable {
|
|
|
630
629
|
const EnvOptions& env_options,
|
|
631
630
|
const ImmutableDBOptions& immutable_ops) const;
|
|
632
631
|
|
|
633
|
-
//
|
|
632
|
+
// OptimizeForCompactionTableRead will create a new EnvOptions object that
|
|
634
633
|
// is a copy of the EnvOptions in the parameters, but is optimized for reading
|
|
635
634
|
// table files.
|
|
636
635
|
virtual EnvOptions OptimizeForCompactionTableRead(
|
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
|
|
6
6
|
#pragma once
|
|
7
7
|
|
|
8
|
-
|
|
9
8
|
#include <string>
|
|
10
9
|
|
|
11
10
|
#include "rocksdb/customizable.h"
|
|
@@ -32,7 +31,7 @@ std::shared_ptr<FileSystem> NewEncryptedFS(
|
|
|
32
31
|
// blocks). E.g. CTR (Counter operation mode) supports this requirement.
|
|
33
32
|
class BlockAccessCipherStream {
|
|
34
33
|
public:
|
|
35
|
-
virtual ~BlockAccessCipherStream(){}
|
|
34
|
+
virtual ~BlockAccessCipherStream() {}
|
|
36
35
|
|
|
37
36
|
// BlockSize returns the size of each block supported by this cipher stream.
|
|
38
37
|
virtual size_t BlockSize() = 0;
|
|
@@ -360,4 +359,3 @@ class EncryptedFileSystem : public FileSystemWrapper {
|
|
|
360
359
|
}
|
|
361
360
|
};
|
|
362
361
|
} // namespace ROCKSDB_NAMESPACE
|
|
363
|
-
|
|
@@ -21,6 +21,11 @@ Status SuggestCompactRange(DB* db, ColumnFamilyHandle* column_family,
|
|
|
21
21
|
const Slice* begin, const Slice* end);
|
|
22
22
|
Status SuggestCompactRange(DB* db, const Slice* begin, const Slice* end);
|
|
23
23
|
|
|
24
|
+
// DEPRECATED: this API may be removed in a future release.
|
|
25
|
+
// This operation can be done through CompactRange() by setting
|
|
26
|
+
// CompactRangeOptions::bottommost_level_compaction set to
|
|
27
|
+
// BottommostLevelCompaction::kSkip and setting target level.
|
|
28
|
+
//
|
|
24
29
|
// Move all L0 files to target_level skipping compaction.
|
|
25
30
|
// This operation succeeds only if the files in L0 have disjoint ranges; this
|
|
26
31
|
// is guaranteed to happen, for instance, if keys are inserted in sorted
|