@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
|
@@ -29,9 +29,6 @@
|
|
|
29
29
|
#include "rocksdb/iterator.h"
|
|
30
30
|
#include "rocksdb/utilities/stackable_db.h"
|
|
31
31
|
#include "rocksdb/utilities/transaction.h"
|
|
32
|
-
#include "table/block_based/block.h"
|
|
33
|
-
#include "table/block_based/block_based_table_builder.h"
|
|
34
|
-
#include "table/block_based/block_builder.h"
|
|
35
32
|
#include "table/meta_blocks.h"
|
|
36
33
|
#include "test_util/sync_point.h"
|
|
37
34
|
#include "util/cast_util.h"
|
|
@@ -232,12 +229,9 @@ Status BlobDBImpl::Open(std::vector<ColumnFamilyHandle*>* handles) {
|
|
|
232
229
|
static_cast<ColumnFamilyHandleImpl*>(DefaultColumnFamily())->cfd();
|
|
233
230
|
assert(cfd);
|
|
234
231
|
|
|
235
|
-
const ImmutableCFOptions* const ioptions = cfd->ioptions();
|
|
236
|
-
assert(ioptions);
|
|
237
|
-
|
|
238
232
|
assert(env_);
|
|
239
233
|
|
|
240
|
-
for (const auto& cf_path : ioptions
|
|
234
|
+
for (const auto& cf_path : cfd->ioptions().cf_paths) {
|
|
241
235
|
bool blob_dir_same_as_cf_dir = false;
|
|
242
236
|
s = env_->AreFilesSame(blob_dir_, cf_path.path, &blob_dir_same_as_cf_dir);
|
|
243
237
|
if (!s.ok()) {
|
|
@@ -1165,13 +1159,21 @@ Slice BlobDBImpl::GetCompressedSlice(const Slice& raw,
|
|
|
1165
1159
|
CompressionType type = bdb_options_.compression;
|
|
1166
1160
|
CompressionOptions opts;
|
|
1167
1161
|
CompressionContext context(type, opts);
|
|
1168
|
-
CompressionInfo info(opts, context, CompressionDict::GetEmptyDict(), type
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1162
|
+
CompressionInfo info(opts, context, CompressionDict::GetEmptyDict(), type);
|
|
1163
|
+
OLD_CompressData(raw, info,
|
|
1164
|
+
GetCompressFormatForVersion(kBlockBasedTableVersionFormat),
|
|
1165
|
+
compression_output);
|
|
1172
1166
|
return *compression_output;
|
|
1173
1167
|
}
|
|
1174
1168
|
|
|
1169
|
+
Decompressor& BlobDecompressor() {
|
|
1170
|
+
static auto mgr = GetBuiltinCompressionManager(
|
|
1171
|
+
GetCompressFormatForVersion(kBlockBasedTableVersionFormat));
|
|
1172
|
+
static auto decompressor = mgr->GetDecompressor();
|
|
1173
|
+
|
|
1174
|
+
return *decompressor;
|
|
1175
|
+
}
|
|
1176
|
+
|
|
1175
1177
|
Status BlobDBImpl::DecompressSlice(const Slice& compressed_value,
|
|
1176
1178
|
CompressionType compression_type,
|
|
1177
1179
|
PinnableSlice* value_output) const {
|
|
@@ -1183,12 +1185,9 @@ Status BlobDBImpl::DecompressSlice(const Slice& compressed_value,
|
|
|
1183
1185
|
{
|
|
1184
1186
|
StopWatch decompression_sw(clock_, statistics_,
|
|
1185
1187
|
BLOB_DB_DECOMPRESSION_MICROS);
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
Status s = UncompressBlockData(
|
|
1190
|
-
info, compressed_value.data(), compressed_value.size(), &contents,
|
|
1191
|
-
kBlockBasedTableVersionFormat, *(cfh->cfd()->ioptions()));
|
|
1188
|
+
Status s = DecompressBlockData(
|
|
1189
|
+
compressed_value.data(), compressed_value.size(), compression_type,
|
|
1190
|
+
BlobDecompressor(), &contents, cfh->cfd()->ioptions());
|
|
1192
1191
|
if (!s.ok()) {
|
|
1193
1192
|
return Status::Corruption("Unable to decompress blob.");
|
|
1194
1193
|
}
|
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
|
|
6
6
|
#pragma once
|
|
7
7
|
|
|
8
|
-
|
|
9
8
|
#include <atomic>
|
|
10
9
|
#include <condition_variable>
|
|
11
10
|
#include <limits>
|
|
@@ -510,5 +509,7 @@ class BlobDBImpl : public BlobDB {
|
|
|
510
509
|
uint32_t debug_level_;
|
|
511
510
|
};
|
|
512
511
|
|
|
512
|
+
Decompressor& BlobDecompressor();
|
|
513
|
+
|
|
513
514
|
} // namespace blob_db
|
|
514
515
|
} // namespace ROCKSDB_NAMESPACE
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
// COPYING file in the root directory) and Apache 2.0 License
|
|
4
4
|
// (found in the LICENSE.Apache file in the root directory).
|
|
5
5
|
|
|
6
|
-
|
|
7
6
|
#include "utilities/blob_db/blob_db.h"
|
|
8
7
|
|
|
9
8
|
#include <algorithm>
|
|
@@ -234,7 +233,7 @@ class BlobDBTest : public testing::Test {
|
|
|
234
233
|
DB *db = blob_db_->GetRootDB();
|
|
235
234
|
const size_t kMaxKeys = 10000;
|
|
236
235
|
std::vector<KeyVersion> versions;
|
|
237
|
-
ASSERT_OK(GetAllKeyVersions(db,
|
|
236
|
+
ASSERT_OK(GetAllKeyVersions(db, {}, {}, kMaxKeys, &versions));
|
|
238
237
|
ASSERT_EQ(expected_versions.size(), versions.size());
|
|
239
238
|
size_t i = 0;
|
|
240
239
|
for (auto &key_version : expected_versions) {
|
|
@@ -260,7 +259,7 @@ class BlobDBTest : public testing::Test {
|
|
|
260
259
|
const size_t kMaxKeys = 10000;
|
|
261
260
|
std::vector<KeyVersion> versions;
|
|
262
261
|
ASSERT_OK(
|
|
263
|
-
GetAllKeyVersions(blob_db_->GetRootDB(),
|
|
262
|
+
GetAllKeyVersions(blob_db_->GetRootDB(), {}, {}, kMaxKeys, &versions));
|
|
264
263
|
ASSERT_EQ(versions.size(), expected_versions.size());
|
|
265
264
|
|
|
266
265
|
size_t i = 0;
|
|
@@ -1596,7 +1595,7 @@ TEST_F(BlobDBTest, FilterExpiredBlobIndex) {
|
|
|
1596
1595
|
// Verify expired blob index are filtered.
|
|
1597
1596
|
std::vector<KeyVersion> versions;
|
|
1598
1597
|
const size_t kMaxKeys = 10000;
|
|
1599
|
-
ASSERT_OK(GetAllKeyVersions(blob_db_,
|
|
1598
|
+
ASSERT_OK(GetAllKeyVersions(blob_db_, {}, {}, kMaxKeys, &versions));
|
|
1600
1599
|
ASSERT_EQ(data_after_compact.size(), versions.size());
|
|
1601
1600
|
for (auto &version : versions) {
|
|
1602
1601
|
ASSERT_TRUE(data_after_compact.count(version.user_key) > 0);
|
|
@@ -1630,14 +1629,14 @@ TEST_F(BlobDBTest, FilterFileNotAvailable) {
|
|
|
1630
1629
|
|
|
1631
1630
|
DB *base_db = blob_db_->GetRootDB();
|
|
1632
1631
|
std::vector<KeyVersion> versions;
|
|
1633
|
-
ASSERT_OK(GetAllKeyVersions(base_db,
|
|
1632
|
+
ASSERT_OK(GetAllKeyVersions(base_db, {}, {}, kMaxKeys, &versions));
|
|
1634
1633
|
ASSERT_EQ(2, versions.size());
|
|
1635
1634
|
ASSERT_EQ("bar", versions[0].user_key);
|
|
1636
1635
|
ASSERT_EQ("foo", versions[1].user_key);
|
|
1637
1636
|
VerifyDB({{"bar", "v2"}, {"foo", "v1"}});
|
|
1638
1637
|
|
|
1639
1638
|
ASSERT_OK(blob_db_->CompactRange(CompactRangeOptions(), nullptr, nullptr));
|
|
1640
|
-
ASSERT_OK(GetAllKeyVersions(base_db,
|
|
1639
|
+
ASSERT_OK(GetAllKeyVersions(base_db, {}, {}, kMaxKeys, &versions));
|
|
1641
1640
|
ASSERT_EQ(2, versions.size());
|
|
1642
1641
|
ASSERT_EQ("bar", versions[0].user_key);
|
|
1643
1642
|
ASSERT_EQ("foo", versions[1].user_key);
|
|
@@ -1647,7 +1646,7 @@ TEST_F(BlobDBTest, FilterFileNotAvailable) {
|
|
|
1647
1646
|
blob_db_impl()->TEST_ObsoleteBlobFile(blob_files[0]);
|
|
1648
1647
|
blob_db_impl()->TEST_DeleteObsoleteFiles();
|
|
1649
1648
|
ASSERT_OK(blob_db_->CompactRange(CompactRangeOptions(), nullptr, nullptr));
|
|
1650
|
-
ASSERT_OK(GetAllKeyVersions(base_db,
|
|
1649
|
+
ASSERT_OK(GetAllKeyVersions(base_db, {}, {}, kMaxKeys, &versions));
|
|
1651
1650
|
ASSERT_EQ(1, versions.size());
|
|
1652
1651
|
ASSERT_EQ("bar", versions[0].user_key);
|
|
1653
1652
|
VerifyDB({{"bar", "v2"}});
|
|
@@ -1656,7 +1655,7 @@ TEST_F(BlobDBTest, FilterFileNotAvailable) {
|
|
|
1656
1655
|
blob_db_impl()->TEST_ObsoleteBlobFile(blob_files[1]);
|
|
1657
1656
|
blob_db_impl()->TEST_DeleteObsoleteFiles();
|
|
1658
1657
|
ASSERT_OK(blob_db_->CompactRange(CompactRangeOptions(), nullptr, nullptr));
|
|
1659
|
-
ASSERT_OK(GetAllKeyVersions(base_db,
|
|
1658
|
+
ASSERT_OK(GetAllKeyVersions(base_db, {}, {}, kMaxKeys, &versions));
|
|
1660
1659
|
ASSERT_EQ(0, versions.size());
|
|
1661
1660
|
VerifyDB({});
|
|
1662
1661
|
}
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
#include "table/format.h"
|
|
20
20
|
#include "util/coding.h"
|
|
21
21
|
#include "util/string_util.h"
|
|
22
|
+
#include "utilities/blob_db/blob_db_impl.h"
|
|
22
23
|
|
|
23
24
|
namespace ROCKSDB_NAMESPACE::blob_db {
|
|
24
25
|
|
|
@@ -210,9 +211,9 @@ Status BlobDumpTool::DumpRecord(DisplayType show_key, DisplayType show_blob,
|
|
|
210
211
|
UncompressionContext context(compression);
|
|
211
212
|
UncompressionInfo info(context, UncompressionDict::GetEmptyDict(),
|
|
212
213
|
compression);
|
|
213
|
-
s =
|
|
214
|
-
|
|
215
|
-
&contents,
|
|
214
|
+
s = DecompressBlockData(
|
|
215
|
+
slice.data() + key_size, static_cast<size_t>(value_size), compression,
|
|
216
|
+
BlobDecompressor(), &contents, ImmutableOptions(Options()));
|
|
216
217
|
if (!s.ok()) {
|
|
217
218
|
return s;
|
|
218
219
|
}
|
|
@@ -230,8 +230,8 @@ IOStatus CacheDumperImpl::WriteHeader() {
|
|
|
230
230
|
std::ostringstream s;
|
|
231
231
|
s << kTraceMagic << "\t"
|
|
232
232
|
<< "Cache dump format version: " << kCacheDumpMajorVersion << "."
|
|
233
|
-
<< kCacheDumpMinorVersion << "\t"
|
|
234
|
-
<< "
|
|
233
|
+
<< kCacheDumpMinorVersion << "\t" << "RocksDB Version: " << kMajorVersion
|
|
234
|
+
<< "." << kMinorVersion << "\t"
|
|
235
235
|
<< "Format: dump_unit_metadata <sequence_number, dump_unit_checksum, "
|
|
236
236
|
"dump_unit_size>, dump_unit <timestamp, key, block_type, "
|
|
237
237
|
"block_size, block_data, block_checksum> cache_value\n";
|
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
// Use of this source code is governed by a BSD-style license that can be
|
|
8
8
|
// found in the LICENSE file.
|
|
9
9
|
|
|
10
|
-
|
|
11
10
|
#include "utilities/checkpoint/checkpoint_impl.h"
|
|
12
11
|
|
|
13
12
|
#include <algorithm>
|
|
@@ -341,6 +340,7 @@ Status CheckpointImpl::ExportColumnFamily(
|
|
|
341
340
|
s = db_->GetEnv()->CreateDir(tmp_export_dir);
|
|
342
341
|
|
|
343
342
|
if (s.ok()) {
|
|
343
|
+
// FIXME: should respect atomic_flush and flush all CFs if needed.
|
|
344
344
|
s = db_->Flush(ROCKSDB_NAMESPACE::FlushOptions(), handle);
|
|
345
345
|
}
|
|
346
346
|
|
|
@@ -847,54 +847,6 @@ TEST_P(CheckpointTestWithWalParams, CheckpointWithUnsyncedDataDropped) {
|
|
|
847
847
|
db_ = nullptr;
|
|
848
848
|
}
|
|
849
849
|
|
|
850
|
-
TEST_F(CheckpointTest, CheckpointOptionsFileFailedToPersist) {
|
|
851
|
-
// Regression test for a bug where checkpoint failed on a DB where persisting
|
|
852
|
-
// OPTIONS file failed and the DB was opened with
|
|
853
|
-
// `fail_if_options_file_error == false`.
|
|
854
|
-
Options options = CurrentOptions();
|
|
855
|
-
options.fail_if_options_file_error = false;
|
|
856
|
-
auto fault_fs = std::make_shared<FaultInjectionTestFS>(FileSystem::Default());
|
|
857
|
-
|
|
858
|
-
// Setup `FaultInjectionTestFS` and `SyncPoint` callbacks to fail one
|
|
859
|
-
// operation when inside the OPTIONS file persisting code.
|
|
860
|
-
std::unique_ptr<Env> fault_fs_env(NewCompositeEnv(fault_fs));
|
|
861
|
-
fault_fs->SetThreadLocalErrorContext(
|
|
862
|
-
FaultInjectionIOType::kWrite, 7 /* seed*/, 1 /* one_in */,
|
|
863
|
-
false /* retryable */, false /* has_data_loss*/);
|
|
864
|
-
SyncPoint::GetInstance()->SetCallBack(
|
|
865
|
-
"PersistRocksDBOptions:start", [fault_fs](void* /* arg */) {
|
|
866
|
-
fault_fs->EnableThreadLocalErrorInjection(
|
|
867
|
-
FaultInjectionIOType::kMetadataWrite);
|
|
868
|
-
});
|
|
869
|
-
SyncPoint::GetInstance()->SetCallBack(
|
|
870
|
-
"FaultInjectionTestFS::InjectMetadataWriteError:Injected",
|
|
871
|
-
[fault_fs](void* /* arg */) {
|
|
872
|
-
fault_fs->DisableThreadLocalErrorInjection(
|
|
873
|
-
FaultInjectionIOType::kMetadataWrite);
|
|
874
|
-
});
|
|
875
|
-
options.env = fault_fs_env.get();
|
|
876
|
-
SyncPoint::GetInstance()->EnableProcessing();
|
|
877
|
-
|
|
878
|
-
Reopen(options);
|
|
879
|
-
ASSERT_OK(Put("key1", "val1"));
|
|
880
|
-
Checkpoint* checkpoint;
|
|
881
|
-
ASSERT_OK(Checkpoint::Create(db_, &checkpoint));
|
|
882
|
-
ASSERT_OK(checkpoint->CreateCheckpoint(snapshot_name_));
|
|
883
|
-
delete checkpoint;
|
|
884
|
-
|
|
885
|
-
// Make sure it's usable.
|
|
886
|
-
options.env = env_;
|
|
887
|
-
DB* snapshot_db;
|
|
888
|
-
ASSERT_OK(DB::Open(options, snapshot_name_, &snapshot_db));
|
|
889
|
-
ReadOptions read_opts;
|
|
890
|
-
std::string get_result;
|
|
891
|
-
ASSERT_OK(snapshot_db->Get(read_opts, "key1", &get_result));
|
|
892
|
-
ASSERT_EQ("val1", get_result);
|
|
893
|
-
delete snapshot_db;
|
|
894
|
-
delete db_;
|
|
895
|
-
db_ = nullptr;
|
|
896
|
-
}
|
|
897
|
-
|
|
898
850
|
TEST_F(CheckpointTest, CheckpointReadOnlyDB) {
|
|
899
851
|
ASSERT_OK(Put("foo", "foo_value"));
|
|
900
852
|
ASSERT_OK(Flush());
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
// COPYING file in the root directory) and Apache 2.0 License
|
|
4
4
|
// (found in the LICENSE.Apache file in the root directory).
|
|
5
5
|
|
|
6
|
-
|
|
7
6
|
#include "rocksdb/utilities/debug.h"
|
|
8
7
|
|
|
9
8
|
#include "db/db_impl/db_impl.h"
|
|
@@ -54,7 +53,7 @@ std::string KeyVersion::GetTypeName() const {
|
|
|
54
53
|
}
|
|
55
54
|
}
|
|
56
55
|
|
|
57
|
-
Status GetAllKeyVersions(DB* db,
|
|
56
|
+
Status GetAllKeyVersions(DB* db, OptSlice begin_key, OptSlice end_key,
|
|
58
57
|
size_t max_num_ikeys,
|
|
59
58
|
std::vector<KeyVersion>* key_versions) {
|
|
60
59
|
if (nullptr == db) {
|
|
@@ -64,8 +63,8 @@ Status GetAllKeyVersions(DB* db, Slice begin_key, Slice end_key,
|
|
|
64
63
|
max_num_ikeys, key_versions);
|
|
65
64
|
}
|
|
66
65
|
|
|
67
|
-
Status GetAllKeyVersions(DB* db, ColumnFamilyHandle* cfh,
|
|
68
|
-
|
|
66
|
+
Status GetAllKeyVersions(DB* db, ColumnFamilyHandle* cfh, OptSlice begin_key,
|
|
67
|
+
OptSlice end_key, size_t max_num_ikeys,
|
|
69
68
|
std::vector<KeyVersion>* key_versions) {
|
|
70
69
|
if (nullptr == db) {
|
|
71
70
|
return Status::InvalidArgument("db cannot be null.");
|
|
@@ -88,15 +87,10 @@ Status GetAllKeyVersions(DB* db, ColumnFamilyHandle* cfh, Slice begin_key,
|
|
|
88
87
|
const Comparator* ucmp = icmp.user_comparator();
|
|
89
88
|
size_t ts_sz = ucmp->timestamp_size();
|
|
90
89
|
|
|
91
|
-
Slice from_slice = begin_key;
|
|
92
|
-
bool has_begin = !begin_key.empty();
|
|
93
|
-
Slice end_slice = end_key;
|
|
94
|
-
bool has_end = !end_key.empty();
|
|
95
90
|
std::string begin_key_buf, end_key_buf;
|
|
96
|
-
auto [from, end] = MaybeAddTimestampsToRange(
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
if (has_begin) {
|
|
91
|
+
auto [from, end] = MaybeAddTimestampsToRange(begin_key, end_key, ts_sz,
|
|
92
|
+
&begin_key_buf, &end_key_buf);
|
|
93
|
+
if (begin_key.has_value()) {
|
|
100
94
|
assert(from.has_value());
|
|
101
95
|
InternalKey ikey;
|
|
102
96
|
ikey.SetMinPossibleForUserKey(from.value());
|
|
@@ -114,7 +108,7 @@ Status GetAllKeyVersions(DB* db, ColumnFamilyHandle* cfh, Slice begin_key,
|
|
|
114
108
|
return pik_status;
|
|
115
109
|
}
|
|
116
110
|
|
|
117
|
-
if (
|
|
111
|
+
if (end_key.has_value() && end.has_value() &&
|
|
118
112
|
icmp.user_comparator()->Compare(ikey.user_key, end.value()) > 0) {
|
|
119
113
|
break;
|
|
120
114
|
}
|
|
@@ -131,4 +125,3 @@ Status GetAllKeyVersions(DB* db, ColumnFamilyHandle* cfh, Slice begin_key,
|
|
|
131
125
|
}
|
|
132
126
|
|
|
133
127
|
} // namespace ROCKSDB_NAMESPACE
|
|
134
|
-
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
// COPYING file in the root directory) and Apache 2.0 License
|
|
5
5
|
// (found in the LICENSE.Apache file in the root directory).
|
|
6
6
|
|
|
7
|
-
|
|
8
7
|
#include "rocksdb/utilities/env_mirror.h"
|
|
9
8
|
|
|
10
9
|
#include "env/mock_env.h"
|
|
@@ -213,4 +212,3 @@ int main(int argc, char** argv) {
|
|
|
213
212
|
::testing::InitGoogleTest(&argc, argv);
|
|
214
213
|
return RUN_ALL_TESTS();
|
|
215
214
|
}
|
|
216
|
-
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
// COPYING file in the root directory) and Apache 2.0 License
|
|
4
4
|
// (found in the LICENSE.Apache file in the root directory).
|
|
5
5
|
|
|
6
|
-
|
|
7
6
|
#include "rocksdb/env.h"
|
|
8
7
|
#include "rocksdb/perf_context.h"
|
|
9
8
|
#include "test_util/testharness.h"
|
|
@@ -31,4 +30,3 @@ int main(int argc, char** argv) {
|
|
|
31
30
|
::testing::InitGoogleTest(&argc, argv);
|
|
32
31
|
return RUN_ALL_TESTS();
|
|
33
32
|
}
|
|
34
|
-
|
|
@@ -578,7 +578,7 @@ void FaultInjectionTestFS::ReadUnsynced(const std::string& fname,
|
|
|
578
578
|
uint64_t offset, size_t n,
|
|
579
579
|
Slice* result, char* scratch,
|
|
580
580
|
int64_t* pos_at_last_sync) {
|
|
581
|
-
*result = Slice(scratch, 0);
|
|
581
|
+
*result = Slice(scratch, 0); // default empty result
|
|
582
582
|
assert(*pos_at_last_sync == -1); // default "unknown"
|
|
583
583
|
|
|
584
584
|
MutexLock l(&mutex_);
|
|
@@ -1379,7 +1379,7 @@ IOStatus FaultInjectionTestFS::MaybeInjectThreadLocalReadError(
|
|
|
1379
1379
|
ErrorContext* ctx =
|
|
1380
1380
|
static_cast<ErrorContext*>(injected_thread_local_read_error_.Get());
|
|
1381
1381
|
if (ctx == nullptr || !ctx->enable_error_injection || !ctx->one_in ||
|
|
1382
|
-
|
|
1382
|
+
ShouldIOActivitiesExcludedFromFaultInjection(io_options.io_activity)) {
|
|
1383
1383
|
return IOStatus::OK();
|
|
1384
1384
|
}
|
|
1385
1385
|
|
|
@@ -1412,6 +1412,7 @@ IOStatus FaultInjectionTestFS::MaybeInjectThreadLocalReadError(
|
|
|
1412
1412
|
msg << "empty result";
|
|
1413
1413
|
ctx->message = msg.str();
|
|
1414
1414
|
ret_fault_injected = true;
|
|
1415
|
+
ret = IOStatus::IOError(ctx->message);
|
|
1415
1416
|
} else if (!direct_io && Random::GetTLSInstance()->OneIn(7) &&
|
|
1416
1417
|
scratch != nullptr && result->data() == scratch) {
|
|
1417
1418
|
assert(result);
|
|
@@ -1430,6 +1431,7 @@ IOStatus FaultInjectionTestFS::MaybeInjectThreadLocalReadError(
|
|
|
1430
1431
|
msg << "corrupt last byte";
|
|
1431
1432
|
ctx->message = msg.str();
|
|
1432
1433
|
ret_fault_injected = true;
|
|
1434
|
+
ret = IOStatus::IOError(ctx->message);
|
|
1433
1435
|
} else {
|
|
1434
1436
|
msg << "error result multiget single";
|
|
1435
1437
|
ctx->message = msg.str();
|
|
@@ -1463,7 +1465,7 @@ IOStatus FaultInjectionTestFS::MaybeInjectThreadLocalError(
|
|
|
1463
1465
|
|
|
1464
1466
|
ErrorContext* ctx = GetErrorContextFromFaultInjectionIOType(type);
|
|
1465
1467
|
if (ctx == nullptr || !ctx->enable_error_injection || !ctx->one_in ||
|
|
1466
|
-
|
|
1468
|
+
ShouldIOActivitiesExcludedFromFaultInjection(io_options.io_activity) ||
|
|
1467
1469
|
(type == FaultInjectionIOType::kWrite &&
|
|
1468
1470
|
ShouldExcludeFromWriteFaultInjection(file_name))) {
|
|
1469
1471
|
return IOStatus::OK();
|
|
@@ -424,10 +424,11 @@ class FaultInjectionTestFS : public FileSystemWrapper {
|
|
|
424
424
|
allow_link_open_file_ = allow_link_open_file;
|
|
425
425
|
}
|
|
426
426
|
|
|
427
|
-
bool
|
|
427
|
+
bool ShouldIOActivitiesExcludedFromFaultInjection(
|
|
428
|
+
Env::IOActivity io_activity) {
|
|
428
429
|
MutexLock l(&mutex_);
|
|
429
|
-
return
|
|
430
|
-
|
|
430
|
+
return io_activities_excluded_from_fault_injection.find(io_activity) !=
|
|
431
|
+
io_activities_excluded_from_fault_injection.end();
|
|
431
432
|
}
|
|
432
433
|
|
|
433
434
|
void AssertNoOpenFile() { assert(open_managed_files_.empty()); }
|
|
@@ -520,10 +521,10 @@ class FaultInjectionTestFS : public FileSystemWrapper {
|
|
|
520
521
|
return count;
|
|
521
522
|
}
|
|
522
523
|
|
|
523
|
-
void
|
|
524
|
-
const std::set<Env::IOActivity>&
|
|
524
|
+
void SetIOActivitiesExcludedFromFaultInjection(
|
|
525
|
+
const std::set<Env::IOActivity>& io_activities) {
|
|
525
526
|
MutexLock l(&mutex_);
|
|
526
|
-
|
|
527
|
+
io_activities_excluded_from_fault_injection = io_activities;
|
|
527
528
|
}
|
|
528
529
|
|
|
529
530
|
void SetFileTypesExcludedFromWriteFaultInjection(
|
|
@@ -589,8 +590,8 @@ class FaultInjectionTestFS : public FileSystemWrapper {
|
|
|
589
590
|
bool filesystem_writable_; // Bypass FaultInjectionTestFS and go directly
|
|
590
591
|
// to underlying FS for writable files
|
|
591
592
|
bool inject_unsynced_data_loss_; // See InjectUnsyncedDataLoss()
|
|
592
|
-
bool read_unsynced_data_;
|
|
593
|
-
bool allow_link_open_file_;
|
|
593
|
+
bool read_unsynced_data_; // See SetReadUnsyncedData()
|
|
594
|
+
bool allow_link_open_file_; // See SetAllowLinkOpenFile()
|
|
594
595
|
IOStatus fs_error_;
|
|
595
596
|
|
|
596
597
|
enum ErrorType : int {
|
|
@@ -627,7 +628,7 @@ class FaultInjectionTestFS : public FileSystemWrapper {
|
|
|
627
628
|
};
|
|
628
629
|
|
|
629
630
|
std::set<FileType> file_types_excluded_from_write_fault_injection_;
|
|
630
|
-
std::set<Env::IOActivity>
|
|
631
|
+
std::set<Env::IOActivity> io_activities_excluded_from_fault_injection;
|
|
631
632
|
ThreadLocalPtr injected_thread_local_read_error_;
|
|
632
633
|
ThreadLocalPtr injected_thread_local_write_error_;
|
|
633
634
|
ThreadLocalPtr injected_thread_local_metadata_read_error_;
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
// COPYING file in the root directory) and Apache 2.0 License
|
|
4
4
|
// (found in the LICENSE.Apache file in the root directory).
|
|
5
5
|
|
|
6
|
-
|
|
7
6
|
#include "rocksdb/utilities/object_registry.h"
|
|
8
7
|
|
|
9
8
|
#include "rocksdb/convenience.h"
|
|
@@ -859,4 +858,3 @@ int main(int argc, char** argv) {
|
|
|
859
858
|
::testing::InitGoogleTest(&argc, argv);
|
|
860
859
|
return RUN_ALL_TESTS();
|
|
861
860
|
}
|
|
862
|
-
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
// (found in the LICENSE.Apache file in the root directory).
|
|
5
5
|
#pragma once
|
|
6
6
|
|
|
7
|
-
|
|
8
7
|
#ifndef OS_WIN
|
|
9
8
|
#include <unistd.h>
|
|
10
9
|
#endif // ! OS_WIN
|
|
@@ -151,4 +150,3 @@ class BlockCacheTier : public PersistentCacheTier {
|
|
|
151
150
|
};
|
|
152
151
|
|
|
153
152
|
} // namespace ROCKSDB_NAMESPACE
|
|
154
|
-
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
// (found in the LICENSE.Apache file in the root directory).
|
|
5
5
|
#pragma once
|
|
6
6
|
|
|
7
|
-
|
|
8
7
|
#include <functional>
|
|
9
8
|
#include <string>
|
|
10
9
|
#include <unordered_map>
|
|
@@ -119,4 +118,3 @@ class BlockCacheTierMetadata {
|
|
|
119
118
|
};
|
|
120
119
|
|
|
121
120
|
} // namespace ROCKSDB_NAMESPACE
|
|
122
|
-
|