@nxtedition/rocksdb 7.1.29 → 7.1.31
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 +34 -0
- package/deps/rocksdb/rocksdb/CMakeLists.txt +2 -2
- package/deps/rocksdb/rocksdb/cache/cache_test.cc +15 -23
- package/deps/rocksdb/rocksdb/cache/fast_lru_cache.h +0 -1
- package/deps/rocksdb/rocksdb/cache/lru_cache.cc +4 -5
- package/deps/rocksdb/rocksdb/cache/lru_cache.h +3 -1
- package/deps/rocksdb/rocksdb/crash_test.mk +1 -1
- package/deps/rocksdb/rocksdb/db/blob/blob_log_format.h +15 -0
- package/deps/rocksdb/rocksdb/db/blob/db_blob_basic_test.cc +1 -1
- package/deps/rocksdb/rocksdb/db/column_family.cc +4 -1
- package/deps/rocksdb/rocksdb/db/compaction/compaction.cc +78 -6
- package/deps/rocksdb/rocksdb/db/compaction/compaction.h +32 -6
- package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator.cc +8 -8
- package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator_test.cc +3 -2
- package/deps/rocksdb/rocksdb/db/compaction/compaction_job.cc +47 -8
- package/deps/rocksdb/rocksdb/db/compaction/compaction_job.h +3 -3
- package/deps/rocksdb/rocksdb/db/compaction/compaction_job_stats_test.cc +105 -166
- package/deps/rocksdb/rocksdb/db/compaction/compaction_job_test.cc +3 -4
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker.cc +46 -15
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker.h +47 -26
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_fifo.cc +17 -10
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_fifo.h +11 -5
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_level.cc +12 -6
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_level.h +1 -2
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_test.cc +337 -103
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_universal.cc +43 -5
- package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_universal.h +1 -2
- package/deps/rocksdb/rocksdb/db/compaction/tiered_compaction_test.cc +524 -1
- package/deps/rocksdb/rocksdb/db/db_compaction_test.cc +164 -0
- package/deps/rocksdb/rocksdb/db/db_impl/compacted_db_impl.cc +6 -6
- package/deps/rocksdb/rocksdb/db/db_impl/compacted_db_impl.h +1 -0
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl.cc +5 -7
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_compaction_flush.cc +11 -1
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_open.cc +4 -4
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_readonly.h +1 -0
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_secondary.cc +2 -3
- package/deps/rocksdb/rocksdb/db/db_impl/db_impl_secondary.h +1 -1
- package/deps/rocksdb/rocksdb/db/db_test2.cc +1 -1
- package/deps/rocksdb/rocksdb/db/memtable.cc +16 -23
- package/deps/rocksdb/rocksdb/db/merge_helper.cc +30 -0
- package/deps/rocksdb/rocksdb/db/merge_helper.h +9 -0
- package/deps/rocksdb/rocksdb/db/range_del_aggregator_bench.cc +29 -9
- package/deps/rocksdb/rocksdb/db/range_tombstone_fragmenter.cc +10 -7
- package/deps/rocksdb/rocksdb/db/range_tombstone_fragmenter.h +12 -8
- package/deps/rocksdb/rocksdb/db/version_set.cc +11 -6
- package/deps/rocksdb/rocksdb/db/wide/db_wide_basic_test.cc +142 -0
- package/deps/rocksdb/rocksdb/db_stress_tool/batched_ops_stress.cc +59 -53
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_common.h +3 -2
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_gflags.cc +4 -0
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_shared_state.h +1 -3
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_test_base.cc +7 -4
- package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_test_base.h +0 -2
- package/deps/rocksdb/rocksdb/env/env.cc +16 -19
- package/deps/rocksdb/rocksdb/env/env_basic_test.cc +1 -1
- package/deps/rocksdb/rocksdb/env/env_chroot.cc +20 -20
- package/deps/rocksdb/rocksdb/env/env_encryption.cc +62 -60
- package/deps/rocksdb/rocksdb/env/env_encryption_ctr.h +1 -1
- package/deps/rocksdb/rocksdb/env/env_test.cc +179 -176
- package/deps/rocksdb/rocksdb/env/file_system.cc +3 -4
- package/deps/rocksdb/rocksdb/env/io_posix.cc +3 -2
- package/deps/rocksdb/rocksdb/env/io_posix.h +1 -2
- package/deps/rocksdb/rocksdb/env/mock_env.h +1 -0
- package/deps/rocksdb/rocksdb/env/mock_env_test.cc +4 -4
- package/deps/rocksdb/rocksdb/file/delete_scheduler.cc +6 -5
- package/deps/rocksdb/rocksdb/file/delete_scheduler.h +2 -5
- package/deps/rocksdb/rocksdb/file/delete_scheduler_test.cc +6 -7
- package/deps/rocksdb/rocksdb/file/file_util.cc +1 -1
- package/deps/rocksdb/rocksdb/file/filename.cc +16 -17
- package/deps/rocksdb/rocksdb/file/filename.h +4 -5
- package/deps/rocksdb/rocksdb/file/prefetch_test.cc +492 -496
- package/deps/rocksdb/rocksdb/file/random_access_file_reader.cc +1 -1
- package/deps/rocksdb/rocksdb/file/random_access_file_reader_test.cc +1 -3
- package/deps/rocksdb/rocksdb/file/read_write_util.cc +1 -0
- package/deps/rocksdb/rocksdb/file/read_write_util.h +1 -0
- package/deps/rocksdb/rocksdb/file/sst_file_manager_impl.cc +6 -8
- package/deps/rocksdb/rocksdb/file/sst_file_manager_impl.h +1 -2
- package/deps/rocksdb/rocksdb/include/rocksdb/advanced_options.h +4 -4
- package/deps/rocksdb/rocksdb/include/rocksdb/block_cache_trace_writer.h +4 -4
- package/deps/rocksdb/rocksdb/include/rocksdb/c.h +166 -167
- package/deps/rocksdb/rocksdb/include/rocksdb/compaction_job_stats.h +1 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/db.h +0 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/file_system.h +12 -12
- package/deps/rocksdb/rocksdb/include/rocksdb/io_status.h +2 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/iostats_context.h +1 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/ldb_tool.h +1 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/perf_context.h +2 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/perf_level.h +1 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/persistent_cache.h +1 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/sst_file_reader.h +0 -4
- package/deps/rocksdb/rocksdb/include/rocksdb/sst_file_writer.h +3 -3
- package/deps/rocksdb/rocksdb/include/rocksdb/system_clock.h +1 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/transaction_log.h +1 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/types.h +1 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h +1 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/env_mirror.h +1 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/option_change_migration.h +1 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/options_type.h +4 -4
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/sim_cache.h +2 -0
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/stackable_db.h +4 -4
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/transaction.h +1 -1
- package/deps/rocksdb/rocksdb/include/rocksdb/utilities/transaction_db.h +2 -2
- package/deps/rocksdb/rocksdb/include/rocksdb/version.h +1 -1
- package/deps/rocksdb/rocksdb/logging/auto_roll_logger.cc +3 -3
- package/deps/rocksdb/rocksdb/logging/auto_roll_logger.h +3 -7
- package/deps/rocksdb/rocksdb/logging/auto_roll_logger_test.cc +20 -23
- package/deps/rocksdb/rocksdb/logging/env_logger_test.cc +1 -0
- package/deps/rocksdb/rocksdb/logging/event_logger.cc +1 -3
- package/deps/rocksdb/rocksdb/logging/event_logger.h +4 -5
- package/deps/rocksdb/rocksdb/logging/event_logger_test.cc +2 -1
- package/deps/rocksdb/rocksdb/logging/log_buffer.cc +2 -3
- package/deps/rocksdb/rocksdb/logging/log_buffer.h +3 -2
- package/deps/rocksdb/rocksdb/logging/logging.h +3 -3
- package/deps/rocksdb/rocksdb/memory/allocator.h +1 -0
- package/deps/rocksdb/rocksdb/memory/arena_test.cc +1 -1
- package/deps/rocksdb/rocksdb/memory/concurrent_arena.cc +2 -0
- package/deps/rocksdb/rocksdb/memory/concurrent_arena.h +1 -0
- package/deps/rocksdb/rocksdb/memtable/alloc_tracker.cc +1 -0
- package/deps/rocksdb/rocksdb/memtable/hash_linklist_rep.cc +17 -20
- package/deps/rocksdb/rocksdb/memtable/hash_skiplist_rep.cc +13 -15
- package/deps/rocksdb/rocksdb/memtable/inlineskiplist.h +11 -10
- package/deps/rocksdb/rocksdb/memtable/inlineskiplist_test.cc +3 -3
- package/deps/rocksdb/rocksdb/memtable/memtablerep_bench.cc +2 -2
- package/deps/rocksdb/rocksdb/memtable/skiplist.h +30 -28
- package/deps/rocksdb/rocksdb/memtable/skiplist_test.cc +4 -6
- package/deps/rocksdb/rocksdb/memtable/skiplistrep.cc +73 -70
- package/deps/rocksdb/rocksdb/memtable/stl_wrappers.h +1 -1
- package/deps/rocksdb/rocksdb/memtable/vectorrep.cc +21 -23
- package/deps/rocksdb/rocksdb/memtable/write_buffer_manager_test.cc +1 -0
- package/deps/rocksdb/rocksdb/monitoring/histogram.cc +24 -38
- package/deps/rocksdb/rocksdb/monitoring/histogram.h +10 -17
- package/deps/rocksdb/rocksdb/monitoring/histogram_test.cc +19 -19
- package/deps/rocksdb/rocksdb/monitoring/histogram_windowing.cc +22 -30
- package/deps/rocksdb/rocksdb/monitoring/histogram_windowing.h +4 -6
- package/deps/rocksdb/rocksdb/monitoring/in_memory_stats_history.cc +1 -0
- package/deps/rocksdb/rocksdb/monitoring/instrumented_mutex.h +4 -12
- package/deps/rocksdb/rocksdb/monitoring/iostats_context.cc +2 -3
- package/deps/rocksdb/rocksdb/monitoring/iostats_context_test.cc +1 -0
- package/deps/rocksdb/rocksdb/monitoring/perf_context.cc +12 -14
- package/deps/rocksdb/rocksdb/monitoring/perf_level.cc +2 -3
- package/deps/rocksdb/rocksdb/monitoring/perf_level_imp.h +1 -1
- package/deps/rocksdb/rocksdb/monitoring/perf_step_timer.h +1 -3
- package/deps/rocksdb/rocksdb/monitoring/persistent_stats_history.cc +1 -0
- package/deps/rocksdb/rocksdb/monitoring/statistics.cc +1 -1
- package/deps/rocksdb/rocksdb/monitoring/statistics.h +7 -7
- package/deps/rocksdb/rocksdb/monitoring/thread_status_updater.h +12 -22
- package/deps/rocksdb/rocksdb/monitoring/thread_status_util.h +7 -10
- package/deps/rocksdb/rocksdb/monitoring/thread_status_util_debug.cc +2 -2
- package/deps/rocksdb/rocksdb/port/lang.h +3 -1
- package/deps/rocksdb/rocksdb/port/likely.h +2 -2
- package/deps/rocksdb/rocksdb/port/mmap.h +2 -2
- package/deps/rocksdb/rocksdb/port/port_dirent.h +2 -2
- package/deps/rocksdb/rocksdb/port/port_posix.cc +32 -27
- package/deps/rocksdb/rocksdb/port/port_posix.h +31 -30
- package/deps/rocksdb/rocksdb/port/stack_trace.cc +1 -1
- package/deps/rocksdb/rocksdb/port/sys_time.h +1 -1
- package/deps/rocksdb/rocksdb/port/win/io_win.h +6 -7
- package/deps/rocksdb/rocksdb/port/win/port_win.h +12 -20
- package/deps/rocksdb/rocksdb/port/win/win_jemalloc.cc +5 -4
- package/deps/rocksdb/rocksdb/port/win/win_logger.cc +3 -5
- package/deps/rocksdb/rocksdb/port/win/win_logger.h +3 -4
- package/deps/rocksdb/rocksdb/port/win/win_thread.cc +30 -49
- package/deps/rocksdb/rocksdb/port/win/win_thread.h +5 -5
- package/deps/rocksdb/rocksdb/port/win/xpress_win.cc +51 -62
- package/deps/rocksdb/rocksdb/port/win/xpress_win.h +2 -2
- package/deps/rocksdb/rocksdb/table/adaptive/adaptive_table_factory.cc +4 -3
- package/deps/rocksdb/rocksdb/table/adaptive/adaptive_table_factory.h +1 -0
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_builder.cc +2 -2
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_factory.cc +2 -1
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_iterator.h +0 -1
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader.cc +3 -4
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader.h +1 -1
- package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader_impl.h +0 -1
- package/deps/rocksdb/rocksdb/table/block_based/block_builder.cc +2 -0
- package/deps/rocksdb/rocksdb/table/block_based/block_builder.h +2 -1
- package/deps/rocksdb/rocksdb/table/block_based/cachable_entry.h +28 -30
- package/deps/rocksdb/rocksdb/table/block_based/data_block_hash_index.cc +2 -1
- package/deps/rocksdb/rocksdb/table/block_based/data_block_hash_index_test.cc +3 -3
- package/deps/rocksdb/rocksdb/table/block_based/filter_block.h +3 -3
- package/deps/rocksdb/rocksdb/table/block_based/filter_block_reader_common.cc +1 -0
- package/deps/rocksdb/rocksdb/table/block_based/filter_policy.cc +4 -5
- package/deps/rocksdb/rocksdb/table/block_based/flush_block_policy.cc +1 -3
- package/deps/rocksdb/rocksdb/table/block_based/full_filter_block.cc +1 -2
- package/deps/rocksdb/rocksdb/table/block_based/full_filter_block.h +1 -0
- package/deps/rocksdb/rocksdb/table/block_based/full_filter_block_test.cc +0 -1
- package/deps/rocksdb/rocksdb/table/block_based/index_builder.h +1 -1
- package/deps/rocksdb/rocksdb/table/block_based/index_reader_common.h +0 -1
- package/deps/rocksdb/rocksdb/table/block_based/partitioned_filter_block_test.cc +7 -6
- package/deps/rocksdb/rocksdb/table/block_based/partitioned_index_iterator.h +0 -1
- package/deps/rocksdb/rocksdb/table/block_based/uncompression_dict_reader.h +1 -0
- package/deps/rocksdb/rocksdb/table/block_fetcher.cc +5 -6
- package/deps/rocksdb/rocksdb/table/block_fetcher.h +2 -2
- package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_builder.cc +90 -80
- package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_builder.h +5 -4
- package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_builder_test.cc +63 -69
- package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_factory.h +2 -1
- package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_reader.cc +58 -57
- package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_reader.h +3 -3
- package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_reader_test.cc +35 -30
- package/deps/rocksdb/rocksdb/table/get_context.cc +16 -10
- package/deps/rocksdb/rocksdb/table/iter_heap.h +2 -0
- package/deps/rocksdb/rocksdb/table/iterator.cc +1 -1
- package/deps/rocksdb/rocksdb/table/iterator_wrapper.h +1 -3
- package/deps/rocksdb/rocksdb/table/merging_iterator.cc +31 -16
- package/deps/rocksdb/rocksdb/table/meta_blocks.cc +6 -6
- package/deps/rocksdb/rocksdb/table/multiget_context.h +5 -6
- package/deps/rocksdb/rocksdb/table/persistent_cache_helper.cc +1 -0
- package/deps/rocksdb/rocksdb/table/plain/plain_table_bloom.cc +1 -1
- package/deps/rocksdb/rocksdb/table/plain/plain_table_builder.cc +7 -10
- package/deps/rocksdb/rocksdb/table/plain/plain_table_builder.h +3 -1
- package/deps/rocksdb/rocksdb/table/plain/plain_table_factory.h +2 -2
- package/deps/rocksdb/rocksdb/table/plain/plain_table_index.cc +4 -3
- package/deps/rocksdb/rocksdb/table/plain/plain_table_index.h +2 -2
- package/deps/rocksdb/rocksdb/table/plain/plain_table_key_coding.cc +1 -0
- package/deps/rocksdb/rocksdb/table/plain/plain_table_reader.cc +10 -21
- package/deps/rocksdb/rocksdb/table/plain/plain_table_reader.h +14 -12
- package/deps/rocksdb/rocksdb/table/scoped_arena_iterator.h +2 -5
- package/deps/rocksdb/rocksdb/table/sst_file_dumper.cc +2 -3
- package/deps/rocksdb/rocksdb/table/sst_file_reader.cc +0 -6
- package/deps/rocksdb/rocksdb/table/sst_file_reader_test.cc +0 -33
- package/deps/rocksdb/rocksdb/table/sst_file_writer.cc +3 -6
- package/deps/rocksdb/rocksdb/table/table_properties.cc +24 -37
- package/deps/rocksdb/rocksdb/table/table_reader.h +3 -2
- package/deps/rocksdb/rocksdb/table/table_reader_bench.cc +9 -8
- package/deps/rocksdb/rocksdb/table/table_test.cc +77 -82
- package/deps/rocksdb/rocksdb/table/two_level_iterator.cc +1 -0
- package/deps/rocksdb/rocksdb/table/two_level_iterator.h +1 -1
- package/deps/rocksdb/rocksdb/test_util/sync_point.cc +8 -18
- package/deps/rocksdb/rocksdb/test_util/sync_point.h +2 -2
- package/deps/rocksdb/rocksdb/test_util/sync_point_impl.cc +4 -3
- package/deps/rocksdb/rocksdb/test_util/sync_point_impl.h +13 -18
- package/deps/rocksdb/rocksdb/test_util/testharness.cc +1 -2
- package/deps/rocksdb/rocksdb/test_util/testutil.h +6 -7
- package/deps/rocksdb/rocksdb/test_util/transaction_test_util.cc +3 -4
- package/deps/rocksdb/rocksdb/test_util/transaction_test_util.h +1 -1
- package/deps/rocksdb/rocksdb/tools/blob_dump.cc +1 -0
- package/deps/rocksdb/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer.cc +11 -7
- package/deps/rocksdb/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer.h +3 -2
- package/deps/rocksdb/rocksdb/tools/db_bench_tool.cc +296 -314
- package/deps/rocksdb/rocksdb/tools/db_sanity_test.cc +6 -6
- package/deps/rocksdb/rocksdb/tools/dump/db_dump_tool.cc +2 -1
- package/deps/rocksdb/rocksdb/tools/ldb_cmd.cc +57 -64
- package/deps/rocksdb/rocksdb/tools/ldb_cmd_impl.h +6 -5
- package/deps/rocksdb/rocksdb/tools/ldb_cmd_test.cc +2 -2
- package/deps/rocksdb/rocksdb/tools/ldb_tool.cc +1 -0
- package/deps/rocksdb/rocksdb/tools/reduce_levels_test.cc +2 -2
- package/deps/rocksdb/rocksdb/tools/simulated_hybrid_file_system.cc +1 -2
- package/deps/rocksdb/rocksdb/tools/sst_dump_tool.cc +10 -10
- package/deps/rocksdb/rocksdb/tools/trace_analyzer_test.cc +1 -1
- package/deps/rocksdb/rocksdb/tools/write_stress.cc +6 -3
- package/deps/rocksdb/rocksdb/util/aligned_buffer.h +12 -31
- package/deps/rocksdb/rocksdb/util/autovector.h +3 -6
- package/deps/rocksdb/rocksdb/util/autovector_test.cc +12 -12
- package/deps/rocksdb/rocksdb/util/bloom_test.cc +8 -12
- package/deps/rocksdb/rocksdb/util/coding.cc +1 -0
- package/deps/rocksdb/rocksdb/util/coding.h +17 -15
- package/deps/rocksdb/rocksdb/util/coding_test.cc +14 -15
- package/deps/rocksdb/rocksdb/util/comparator.cc +4 -4
- package/deps/rocksdb/rocksdb/util/compression.h +6 -3
- package/deps/rocksdb/rocksdb/util/compression_context_cache.cc +2 -2
- package/deps/rocksdb/rocksdb/util/concurrent_task_limiter_impl.cc +5 -8
- package/deps/rocksdb/rocksdb/util/concurrent_task_limiter_impl.h +1 -1
- package/deps/rocksdb/rocksdb/util/crc32c.cc +202 -297
- package/deps/rocksdb/rocksdb/util/crc32c.h +2 -3
- package/deps/rocksdb/rocksdb/util/crc32c_arm64.h +2 -0
- package/deps/rocksdb/rocksdb/util/crc32c_test.cc +39 -54
- package/deps/rocksdb/rocksdb/util/defer.h +2 -1
- package/deps/rocksdb/rocksdb/util/defer_test.cc +2 -1
- package/deps/rocksdb/rocksdb/util/duplicate_detector.h +2 -1
- package/deps/rocksdb/rocksdb/util/dynamic_bloom.cc +1 -1
- package/deps/rocksdb/rocksdb/util/dynamic_bloom.h +3 -3
- package/deps/rocksdb/rocksdb/util/dynamic_bloom_test.cc +1 -1
- package/deps/rocksdb/rocksdb/util/filelock_test.cc +24 -29
- package/deps/rocksdb/rocksdb/util/filter_bench.cc +4 -4
- package/deps/rocksdb/rocksdb/util/hash_test.cc +2 -2
- package/deps/rocksdb/rocksdb/util/heap.h +5 -4
- package/deps/rocksdb/rocksdb/util/heap_test.cc +15 -25
- package/deps/rocksdb/rocksdb/util/kv_map.h +1 -1
- package/deps/rocksdb/rocksdb/util/murmurhash.cc +7 -2
- package/deps/rocksdb/rocksdb/util/murmurhash.h +4 -3
- package/deps/rocksdb/rocksdb/util/mutexlock.h +5 -11
- package/deps/rocksdb/rocksdb/util/random.cc +1 -0
- package/deps/rocksdb/rocksdb/util/random.h +2 -4
- package/deps/rocksdb/rocksdb/util/random_test.cc +2 -1
- package/deps/rocksdb/rocksdb/util/ribbon_test.cc +4 -3
- package/deps/rocksdb/rocksdb/util/slice.cc +1 -1
- package/deps/rocksdb/rocksdb/util/slice_test.cc +1 -2
- package/deps/rocksdb/rocksdb/util/status.cc +2 -0
- package/deps/rocksdb/rocksdb/util/string_util.cc +2 -0
- package/deps/rocksdb/rocksdb/util/thread_list_test.cc +64 -76
- package/deps/rocksdb/rocksdb/util/thread_local.cc +18 -32
- package/deps/rocksdb/rocksdb/util/thread_local.h +2 -3
- package/deps/rocksdb/rocksdb/util/thread_operation.h +34 -43
- package/deps/rocksdb/rocksdb/util/threadpool_imp.cc +54 -73
- package/deps/rocksdb/rocksdb/util/threadpool_imp.h +18 -18
- package/deps/rocksdb/rocksdb/util/timer.h +4 -9
- package/deps/rocksdb/rocksdb/util/timer_queue.h +1 -0
- package/deps/rocksdb/rocksdb/util/timer_queue_test.cc +1 -0
- package/deps/rocksdb/rocksdb/util/xxhash.cc +1 -2
- package/deps/rocksdb/rocksdb/util/xxhash.h +7 -4
- package/deps/rocksdb/rocksdb/util/xxph3.h +3 -1
- package/deps/rocksdb/rocksdb/utilities/backup/backup_engine.cc +16 -24
- package/deps/rocksdb/rocksdb/utilities/backup/backup_engine_impl.h +1 -1
- package/deps/rocksdb/rocksdb/utilities/backup/backup_engine_test.cc +106 -104
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db.h +3 -4
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_impl.cc +6 -6
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_impl.h +1 -2
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_test.cc +3 -4
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_dump_tool.cc +3 -1
- package/deps/rocksdb/rocksdb/utilities/blob_db/blob_file.cc +11 -15
- package/deps/rocksdb/rocksdb/utilities/cache_dump_load_impl.cc +1 -2
- package/deps/rocksdb/rocksdb/utilities/cassandra/cassandra_compaction_filter.cc +3 -3
- package/deps/rocksdb/rocksdb/utilities/cassandra/cassandra_compaction_filter.h +12 -12
- package/deps/rocksdb/rocksdb/utilities/cassandra/cassandra_format_test.cc +56 -55
- package/deps/rocksdb/rocksdb/utilities/cassandra/cassandra_functional_test.cc +91 -74
- package/deps/rocksdb/rocksdb/utilities/cassandra/cassandra_row_merge_test.cc +17 -34
- package/deps/rocksdb/rocksdb/utilities/cassandra/cassandra_serialize_test.cc +21 -45
- package/deps/rocksdb/rocksdb/utilities/cassandra/format.cc +74 -97
- package/deps/rocksdb/rocksdb/utilities/cassandra/format.h +17 -18
- package/deps/rocksdb/rocksdb/utilities/cassandra/merge_operator.cc +3 -4
- package/deps/rocksdb/rocksdb/utilities/cassandra/merge_operator.h +19 -19
- package/deps/rocksdb/rocksdb/utilities/cassandra/serialize.h +19 -18
- package/deps/rocksdb/rocksdb/utilities/cassandra/test_utils.cc +7 -10
- package/deps/rocksdb/rocksdb/utilities/cassandra/test_utils.h +3 -4
- package/deps/rocksdb/rocksdb/utilities/checkpoint/checkpoint_impl.h +2 -2
- package/deps/rocksdb/rocksdb/utilities/checkpoint/checkpoint_test.cc +10 -15
- package/deps/rocksdb/rocksdb/utilities/compaction_filters/remove_emptyvalue_compactionfilter.cc +2 -1
- package/deps/rocksdb/rocksdb/utilities/convenience/info_log_finder.cc +1 -0
- package/deps/rocksdb/rocksdb/utilities/env_mirror_test.cc +5 -3
- package/deps/rocksdb/rocksdb/utilities/env_timed_test.cc +1 -2
- package/deps/rocksdb/rocksdb/utilities/fault_injection_env.h +4 -5
- package/deps/rocksdb/rocksdb/utilities/fault_injection_fs.cc +5 -7
- package/deps/rocksdb/rocksdb/utilities/fault_injection_fs.h +9 -13
- package/deps/rocksdb/rocksdb/utilities/leveldb_options/leveldb_options.cc +1 -0
- package/deps/rocksdb/rocksdb/utilities/merge_operators/bytesxor.cc +7 -9
- package/deps/rocksdb/rocksdb/utilities/merge_operators/bytesxor.h +4 -5
- package/deps/rocksdb/rocksdb/utilities/merge_operators/put.cc +4 -3
- package/deps/rocksdb/rocksdb/utilities/merge_operators/sortlist.cc +1 -1
- package/deps/rocksdb/rocksdb/utilities/merge_operators/string_append/stringappend.cc +3 -3
- package/deps/rocksdb/rocksdb/utilities/merge_operators/string_append/stringappend.h +2 -4
- package/deps/rocksdb/rocksdb/utilities/merge_operators/string_append/stringappend2.h +2 -2
- package/deps/rocksdb/rocksdb/utilities/merge_operators/string_append/stringappend_test.cc +39 -50
- package/deps/rocksdb/rocksdb/utilities/merge_operators/uint64add.cc +2 -2
- package/deps/rocksdb/rocksdb/utilities/merge_operators.h +4 -3
- package/deps/rocksdb/rocksdb/utilities/options/options_util.cc +2 -2
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier.cc +5 -7
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier.h +5 -4
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier_file.cc +1 -2
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier_file.h +3 -6
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier_file_buffer.h +1 -1
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier_metadata.cc +2 -2
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier_metadata.h +0 -1
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/hash_table.h +1 -0
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/hash_table_test.cc +3 -1
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/persistent_cache_bench.cc +1 -1
- package/deps/rocksdb/rocksdb/utilities/persistent_cache/persistent_cache_test.cc +18 -13
- package/deps/rocksdb/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector.h +1 -3
- package/deps/rocksdb/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector_test.cc +15 -14
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/point/point_lock_manager.cc +14 -12
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/point/point_lock_manager.h +2 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_locking_test.cc +4 -7
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/locktree.cc +1 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_time.h +1 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/optimistic_transaction.h +1 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/optimistic_transaction_db_impl.h +1 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/optimistic_transaction_test.cc +3 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/transaction_base.cc +1 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/transaction_base.h +3 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/transaction_test.cc +5 -5
- package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_transaction_test.cc +3 -4
- package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_txn.cc +2 -2
- package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_txn_db.cc +5 -4
- package/deps/rocksdb/rocksdb/utilities/transactions/write_unprepared_transaction_test.cc +1 -1
- package/deps/rocksdb/rocksdb/utilities/transactions/write_unprepared_txn_db.cc +1 -0
- package/deps/rocksdb/rocksdb/utilities/ttl/db_ttl_impl.cc +3 -4
- package/deps/rocksdb/rocksdb/utilities/ttl/db_ttl_impl.h +2 -6
- package/deps/rocksdb/rocksdb/utilities/ttl/ttl_test.cc +80 -79
- package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index.cc +3 -3
- package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index_test.cc +9 -17
- package/index.js +4 -0
- package/package.json +2 -2
- package/prebuilds/darwin-arm64/node.napi.node +0 -0
- package/prebuilds/linux-x64/node.napi.node +0 -0
|
@@ -28,7 +28,7 @@ namespace {
|
|
|
28
28
|
using KVMap = std::map<std::string, std::string>;
|
|
29
29
|
|
|
30
30
|
enum BatchOperation { OP_PUT = 0, OP_DELETE = 1 };
|
|
31
|
-
}
|
|
31
|
+
} // namespace
|
|
32
32
|
|
|
33
33
|
class SpecialTimeEnv : public EnvWrapper {
|
|
34
34
|
public:
|
|
@@ -81,8 +81,8 @@ class TtlTest : public testing::Test {
|
|
|
81
81
|
// Open with TestFilter compaction filter
|
|
82
82
|
void OpenTtlWithTestCompaction(int32_t ttl) {
|
|
83
83
|
options_.compaction_filter_factory =
|
|
84
|
-
|
|
85
|
-
|
|
84
|
+
std::shared_ptr<CompactionFilterFactory>(
|
|
85
|
+
new TestFilterFactory(kSampleSize_, kNewValue_));
|
|
86
86
|
OpenTtl(ttl);
|
|
87
87
|
}
|
|
88
88
|
|
|
@@ -121,7 +121,7 @@ class TtlTest : public testing::Test {
|
|
|
121
121
|
if (i % 10 == 0) {
|
|
122
122
|
digits_in_i++;
|
|
123
123
|
}
|
|
124
|
-
for(int j = digits_in_i; j < digits; j++) {
|
|
124
|
+
for (int j = digits_in_i; j < digits; j++) {
|
|
125
125
|
key.append("0");
|
|
126
126
|
value.append("0");
|
|
127
127
|
}
|
|
@@ -210,16 +210,19 @@ class TtlTest : public testing::Test {
|
|
|
210
210
|
static ReadOptions ropts;
|
|
211
211
|
bool value_found;
|
|
212
212
|
std::string val;
|
|
213
|
-
for(auto
|
|
213
|
+
for (auto& kv : kvmap_) {
|
|
214
214
|
bool ret = db_ttl_->KeyMayExist(ropts, kv.first, &val, &value_found);
|
|
215
215
|
if (ret == false || value_found == false) {
|
|
216
|
-
fprintf(stderr,
|
|
217
|
-
|
|
216
|
+
fprintf(stderr,
|
|
217
|
+
"KeyMayExist could not find key=%s in the database but"
|
|
218
|
+
" should have\n",
|
|
219
|
+
kv.first.c_str());
|
|
218
220
|
FAIL();
|
|
219
221
|
} else if (val.compare(kv.second) != 0) {
|
|
220
|
-
fprintf(stderr,
|
|
221
|
-
|
|
222
|
-
|
|
222
|
+
fprintf(stderr,
|
|
223
|
+
" value for key=%s present in database is %s but"
|
|
224
|
+
" should be %s\n",
|
|
225
|
+
kv.first.c_str(), val.c_str(), kv.second.c_str());
|
|
223
226
|
FAIL();
|
|
224
227
|
}
|
|
225
228
|
}
|
|
@@ -263,17 +266,19 @@ class TtlTest : public testing::Test {
|
|
|
263
266
|
}
|
|
264
267
|
FAIL();
|
|
265
268
|
} else if (s.ok()) {
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
269
|
+
if (test_compaction_change && v.compare(kNewValue_) != 0) {
|
|
270
|
+
fprintf(stderr,
|
|
271
|
+
" value for key=%s present in database is %s but "
|
|
272
|
+
" should be %s\n",
|
|
273
|
+
kv_it_->first.c_str(), v.c_str(), kNewValue_.c_str());
|
|
274
|
+
FAIL();
|
|
275
|
+
} else if (!test_compaction_change && v.compare(kv_it_->second) != 0) {
|
|
276
|
+
fprintf(stderr,
|
|
277
|
+
" value for key=%s present in database is %s but "
|
|
278
|
+
" should be %s\n",
|
|
279
|
+
kv_it_->first.c_str(), v.c_str(), kv_it_->second.c_str());
|
|
280
|
+
FAIL();
|
|
281
|
+
}
|
|
277
282
|
}
|
|
278
283
|
}
|
|
279
284
|
}
|
|
@@ -299,7 +304,7 @@ class TtlTest : public testing::Test {
|
|
|
299
304
|
env_->Sleep(slp);
|
|
300
305
|
ASSERT_OK(ManualCompact());
|
|
301
306
|
static ReadOptions ropts;
|
|
302
|
-
Iterator
|
|
307
|
+
Iterator* dbiter = db_ttl_->NewIterator(ropts);
|
|
303
308
|
kv_it_ = kvmap_.begin();
|
|
304
309
|
advance(kv_it_, st_pos);
|
|
305
310
|
|
|
@@ -329,9 +334,7 @@ class TtlTest : public testing::Test {
|
|
|
329
334
|
class TestFilter : public CompactionFilter {
|
|
330
335
|
public:
|
|
331
336
|
TestFilter(const int64_t kSampleSize, const std::string& kNewValue)
|
|
332
|
-
|
|
333
|
-
kNewValue_(kNewValue) {
|
|
334
|
-
}
|
|
337
|
+
: kSampleSize_(kSampleSize), kNewValue_(kNewValue) {}
|
|
335
338
|
|
|
336
339
|
// Works on keys of the form "key<number>"
|
|
337
340
|
// Drops key if number at the end of key is in [0, kSampleSize_/3),
|
|
@@ -355,7 +358,7 @@ class TtlTest : public testing::Test {
|
|
|
355
358
|
#endif
|
|
356
359
|
|
|
357
360
|
} else {
|
|
358
|
-
return false;
|
|
361
|
+
return false; // Keep keys not matching the format "key<NUMBER>"
|
|
359
362
|
}
|
|
360
363
|
|
|
361
364
|
int64_t partition = kSampleSize_ / 3;
|
|
@@ -378,26 +381,23 @@ class TtlTest : public testing::Test {
|
|
|
378
381
|
};
|
|
379
382
|
|
|
380
383
|
class TestFilterFactory : public CompactionFilterFactory {
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
: kSampleSize_(kSampleSize),
|
|
384
|
-
kNewValue_(kNewValue) {
|
|
385
|
-
}
|
|
384
|
+
public:
|
|
385
|
+
TestFilterFactory(const int64_t kSampleSize, const std::string& kNewValue)
|
|
386
|
+
: kSampleSize_(kSampleSize), kNewValue_(kNewValue) {}
|
|
386
387
|
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
388
|
+
std::unique_ptr<CompactionFilter> CreateCompactionFilter(
|
|
389
|
+
const CompactionFilter::Context& /*context*/) override {
|
|
390
|
+
return std::unique_ptr<CompactionFilter>(
|
|
391
|
+
new TestFilter(kSampleSize_, kNewValue_));
|
|
392
|
+
}
|
|
392
393
|
|
|
393
|
-
|
|
394
|
+
const char* Name() const override { return "TestFilterFactory"; }
|
|
394
395
|
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
396
|
+
private:
|
|
397
|
+
const int64_t kSampleSize_;
|
|
398
|
+
const std::string kNewValue_;
|
|
398
399
|
};
|
|
399
400
|
|
|
400
|
-
|
|
401
401
|
// Choose carefully so that Put, Gets & Compaction complete in 1 second buffer
|
|
402
402
|
static const int64_t kSampleSize_ = 100;
|
|
403
403
|
std::string dbname_;
|
|
@@ -410,7 +410,7 @@ class TtlTest : public testing::Test {
|
|
|
410
410
|
KVMap::iterator kv_it_;
|
|
411
411
|
const std::string kNewValue_ = "new_value";
|
|
412
412
|
std::unique_ptr<CompactionFilter> test_comp_filter_;
|
|
413
|
-
};
|
|
413
|
+
}; // class TtlTest
|
|
414
414
|
|
|
415
415
|
// If TTL is non positive or not provided, the behaviour is TTL = infinity
|
|
416
416
|
// This test opens the db 3 times with such default behavior and inserts a
|
|
@@ -422,18 +422,18 @@ TEST_F(TtlTest, NoEffect) {
|
|
|
422
422
|
int64_t boundary2 = 2 * boundary1;
|
|
423
423
|
|
|
424
424
|
OpenTtl();
|
|
425
|
-
PutValues(0, boundary1);
|
|
426
|
-
SleepCompactCheck(1, 0, boundary1);
|
|
425
|
+
PutValues(0, boundary1); // T=0: Set1 never deleted
|
|
426
|
+
SleepCompactCheck(1, 0, boundary1); // T=1: Set1 still there
|
|
427
427
|
CloseTtl();
|
|
428
428
|
|
|
429
429
|
OpenTtl(0);
|
|
430
|
-
PutValues(boundary1, boundary2 - boundary1);
|
|
431
|
-
SleepCompactCheck(1, 0, boundary2);
|
|
430
|
+
PutValues(boundary1, boundary2 - boundary1); // T=1: Set2 never deleted
|
|
431
|
+
SleepCompactCheck(1, 0, boundary2); // T=2: Sets1 & 2 still there
|
|
432
432
|
CloseTtl();
|
|
433
433
|
|
|
434
434
|
OpenTtl(-1);
|
|
435
|
-
PutValues(boundary2, kSampleSize_ - boundary2);
|
|
436
|
-
SleepCompactCheck(1, 0, kSampleSize_, true);
|
|
435
|
+
PutValues(boundary2, kSampleSize_ - boundary2); // T=3: Set3 never deleted
|
|
436
|
+
SleepCompactCheck(1, 0, kSampleSize_, true); // T=4: Sets 1,2,3 still there
|
|
437
437
|
CloseTtl();
|
|
438
438
|
}
|
|
439
439
|
|
|
@@ -464,9 +464,10 @@ TEST_F(TtlTest, DestructWithoutClose) {
|
|
|
464
464
|
TEST_F(TtlTest, PresentDuringTTL) {
|
|
465
465
|
MakeKVMap(kSampleSize_);
|
|
466
466
|
|
|
467
|
-
OpenTtl(2);
|
|
468
|
-
PutValues(0, kSampleSize_);
|
|
469
|
-
SleepCompactCheck(1, 0, kSampleSize_,
|
|
467
|
+
OpenTtl(2); // T=0:Open the db with ttl = 2
|
|
468
|
+
PutValues(0, kSampleSize_); // T=0:Insert Set1. Delete at t=2
|
|
469
|
+
SleepCompactCheck(1, 0, kSampleSize_,
|
|
470
|
+
true); // T=1:Set1 should still be there
|
|
470
471
|
CloseTtl();
|
|
471
472
|
}
|
|
472
473
|
|
|
@@ -474,9 +475,9 @@ TEST_F(TtlTest, PresentDuringTTL) {
|
|
|
474
475
|
TEST_F(TtlTest, AbsentAfterTTL) {
|
|
475
476
|
MakeKVMap(kSampleSize_);
|
|
476
477
|
|
|
477
|
-
OpenTtl(1);
|
|
478
|
-
PutValues(0, kSampleSize_);
|
|
479
|
-
SleepCompactCheck(2, 0, kSampleSize_, false);
|
|
478
|
+
OpenTtl(1); // T=0:Open the db with ttl = 2
|
|
479
|
+
PutValues(0, kSampleSize_); // T=0:Insert Set1. Delete at t=2
|
|
480
|
+
SleepCompactCheck(2, 0, kSampleSize_, false); // T=2:Set1 should not be there
|
|
480
481
|
CloseTtl();
|
|
481
482
|
}
|
|
482
483
|
|
|
@@ -486,10 +487,10 @@ TEST_F(TtlTest, ResetTimestamp) {
|
|
|
486
487
|
MakeKVMap(kSampleSize_);
|
|
487
488
|
|
|
488
489
|
OpenTtl(3);
|
|
489
|
-
PutValues(0, kSampleSize_);
|
|
490
|
-
env_->Sleep(2);
|
|
491
|
-
PutValues(0, kSampleSize_);
|
|
492
|
-
SleepCompactCheck(2, 0, kSampleSize_);
|
|
490
|
+
PutValues(0, kSampleSize_); // T=0: Insert Set1. Delete at t=3
|
|
491
|
+
env_->Sleep(2); // T=2
|
|
492
|
+
PutValues(0, kSampleSize_); // T=2: Insert Set1. Delete at t=5
|
|
493
|
+
SleepCompactCheck(2, 0, kSampleSize_); // T=4: Set1 should still be there
|
|
493
494
|
CloseTtl();
|
|
494
495
|
}
|
|
495
496
|
|
|
@@ -508,8 +509,8 @@ TEST_F(TtlTest, IterAbsentAfterTTL) {
|
|
|
508
509
|
MakeKVMap(kSampleSize_);
|
|
509
510
|
|
|
510
511
|
OpenTtl(1);
|
|
511
|
-
PutValues(0, kSampleSize_);
|
|
512
|
-
SleepCompactCheckIter(2, 0, kSampleSize_, false);
|
|
512
|
+
PutValues(0, kSampleSize_); // T=0: Insert. Delete at t=1
|
|
513
|
+
SleepCompactCheckIter(2, 0, kSampleSize_, false); // T=2: Should not be there
|
|
513
514
|
CloseTtl();
|
|
514
515
|
}
|
|
515
516
|
|
|
@@ -519,11 +520,11 @@ TEST_F(TtlTest, MultiOpenSamePresent) {
|
|
|
519
520
|
MakeKVMap(kSampleSize_);
|
|
520
521
|
|
|
521
522
|
OpenTtl(2);
|
|
522
|
-
PutValues(0, kSampleSize_);
|
|
523
|
+
PutValues(0, kSampleSize_); // T=0: Insert. Delete at t=2
|
|
523
524
|
CloseTtl();
|
|
524
525
|
|
|
525
|
-
OpenTtl(2);
|
|
526
|
-
SleepCompactCheck(1, 0, kSampleSize_);
|
|
526
|
+
OpenTtl(2); // T=0. Delete at t=2
|
|
527
|
+
SleepCompactCheck(1, 0, kSampleSize_); // T=1: Set should be there
|
|
527
528
|
CloseTtl();
|
|
528
529
|
}
|
|
529
530
|
|
|
@@ -533,11 +534,11 @@ TEST_F(TtlTest, MultiOpenSameAbsent) {
|
|
|
533
534
|
MakeKVMap(kSampleSize_);
|
|
534
535
|
|
|
535
536
|
OpenTtl(1);
|
|
536
|
-
PutValues(0, kSampleSize_);
|
|
537
|
+
PutValues(0, kSampleSize_); // T=0: Insert. Delete at t=1
|
|
537
538
|
CloseTtl();
|
|
538
539
|
|
|
539
|
-
OpenTtl(1);
|
|
540
|
-
SleepCompactCheck(2, 0, kSampleSize_, false);
|
|
540
|
+
OpenTtl(1); // T=0.Delete at t=1
|
|
541
|
+
SleepCompactCheck(2, 0, kSampleSize_, false); // T=2: Set should not be there
|
|
541
542
|
CloseTtl();
|
|
542
543
|
}
|
|
543
544
|
|
|
@@ -546,11 +547,11 @@ TEST_F(TtlTest, MultiOpenDifferent) {
|
|
|
546
547
|
MakeKVMap(kSampleSize_);
|
|
547
548
|
|
|
548
549
|
OpenTtl(1);
|
|
549
|
-
PutValues(0, kSampleSize_);
|
|
550
|
+
PutValues(0, kSampleSize_); // T=0: Insert. Delete at t=1
|
|
550
551
|
CloseTtl();
|
|
551
552
|
|
|
552
|
-
OpenTtl(3);
|
|
553
|
-
SleepCompactCheck(2, 0, kSampleSize_);
|
|
553
|
+
OpenTtl(3); // T=0: Set deleted at t=3
|
|
554
|
+
SleepCompactCheck(2, 0, kSampleSize_); // T=2: Set should be there
|
|
554
555
|
CloseTtl();
|
|
555
556
|
}
|
|
556
557
|
|
|
@@ -558,8 +559,8 @@ TEST_F(TtlTest, MultiOpenDifferent) {
|
|
|
558
559
|
TEST_F(TtlTest, ReadOnlyPresentForever) {
|
|
559
560
|
MakeKVMap(kSampleSize_);
|
|
560
561
|
|
|
561
|
-
OpenTtl(1);
|
|
562
|
-
PutValues(0, kSampleSize_);
|
|
562
|
+
OpenTtl(1); // T=0:Open the db normally
|
|
563
|
+
PutValues(0, kSampleSize_); // T=0:Insert Set1. Delete at t=1
|
|
563
564
|
CloseTtl();
|
|
564
565
|
|
|
565
566
|
OpenReadOnlyTtl(1);
|
|
@@ -597,17 +598,17 @@ TEST_F(TtlTest, CompactionFilter) {
|
|
|
597
598
|
MakeKVMap(kSampleSize_);
|
|
598
599
|
|
|
599
600
|
OpenTtlWithTestCompaction(1);
|
|
600
|
-
PutValues(0, kSampleSize_);
|
|
601
|
+
PutValues(0, kSampleSize_); // T=0:Insert Set1. Delete at t=1
|
|
601
602
|
// T=2: TTL logic takes precedence over TestFilter:-Set1 should not be there
|
|
602
603
|
SleepCompactCheck(2, 0, kSampleSize_, false);
|
|
603
604
|
CloseTtl();
|
|
604
605
|
|
|
605
606
|
OpenTtlWithTestCompaction(3);
|
|
606
|
-
PutValues(0, kSampleSize_);
|
|
607
|
+
PutValues(0, kSampleSize_); // T=0:Insert Set1.
|
|
607
608
|
int64_t partition = kSampleSize_ / 3;
|
|
608
|
-
SleepCompactCheck(1, 0, partition, false);
|
|
609
|
-
SleepCompactCheck(0, partition, partition);
|
|
610
|
-
SleepCompactCheck(0, 2 * partition, partition, true, true);
|
|
609
|
+
SleepCompactCheck(1, 0, partition, false); // Part dropped
|
|
610
|
+
SleepCompactCheck(0, partition, partition); // Part kept
|
|
611
|
+
SleepCompactCheck(0, 2 * partition, partition, true, true); // Part changed
|
|
611
612
|
CloseTtl();
|
|
612
613
|
}
|
|
613
614
|
|
|
@@ -696,10 +697,10 @@ TEST_F(TtlTest, ColumnFamiliesTest) {
|
|
|
696
697
|
TEST_F(TtlTest, ChangeTtlOnOpenDb) {
|
|
697
698
|
MakeKVMap(kSampleSize_);
|
|
698
699
|
|
|
699
|
-
OpenTtl(1);
|
|
700
|
+
OpenTtl(1); // T=0:Open the db with ttl = 2
|
|
700
701
|
SetTtl(3);
|
|
701
|
-
PutValues(0, kSampleSize_);
|
|
702
|
-
SleepCompactCheck(2, 0, kSampleSize_, true);
|
|
702
|
+
PutValues(0, kSampleSize_); // T=0:Insert Set1. Delete at t=2
|
|
703
|
+
SleepCompactCheck(2, 0, kSampleSize_, true); // T=2:Set1 should be there
|
|
703
704
|
CloseTtl();
|
|
704
705
|
}
|
|
705
706
|
|
|
@@ -163,7 +163,7 @@ void WriteBatchWithIndex::Rep::AddNewEntry(uint32_t column_family_id) {
|
|
|
163
163
|
auto* mem = arena.Allocate(sizeof(WriteBatchIndexEntry));
|
|
164
164
|
auto* index_entry =
|
|
165
165
|
new (mem) WriteBatchIndexEntry(last_entry_offset, column_family_id,
|
|
166
|
-
|
|
166
|
+
key.data() - wb_data.data(), key.size());
|
|
167
167
|
skip_list.Insert(index_entry);
|
|
168
168
|
}
|
|
169
169
|
|
|
@@ -207,8 +207,8 @@ Status WriteBatchWithIndex::Rep::ReBuildIndex() {
|
|
|
207
207
|
// set offset of current entry for call to AddNewEntry()
|
|
208
208
|
last_entry_offset = input.data() - write_batch.Data().data();
|
|
209
209
|
|
|
210
|
-
s = ReadRecordFromWriteBatch(&input, &tag, &column_family_id, &key,
|
|
211
|
-
|
|
210
|
+
s = ReadRecordFromWriteBatch(&input, &tag, &column_family_id, &key, &value,
|
|
211
|
+
&blob, &xid);
|
|
212
212
|
if (!s.ok()) {
|
|
213
213
|
break;
|
|
214
214
|
}
|
package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index_test.cc
CHANGED
|
@@ -237,7 +237,7 @@ void AssertIterEqual(WBWIIteratorImpl* wbwii,
|
|
|
237
237
|
}
|
|
238
238
|
ASSERT_FALSE(wbwii->Valid());
|
|
239
239
|
}
|
|
240
|
-
} // namespace
|
|
240
|
+
} // namespace
|
|
241
241
|
|
|
242
242
|
class WBWIBaseTest : public testing::Test {
|
|
243
243
|
public:
|
|
@@ -512,14 +512,10 @@ void TestValueAsSecondaryIndexHelper(std::vector<Entry> entries,
|
|
|
512
512
|
|
|
513
513
|
TEST_F(WBWIKeepTest, TestValueAsSecondaryIndex) {
|
|
514
514
|
Entry entries[] = {
|
|
515
|
-
{"aaa", "0005", kPutRecord},
|
|
516
|
-
{"
|
|
517
|
-
{"cdd", "0002",
|
|
518
|
-
{"aab", "
|
|
519
|
-
{"cc", "00005", kPutRecord},
|
|
520
|
-
{"cdd", "0002", kPutRecord},
|
|
521
|
-
{"aab", "0003", kPutRecord},
|
|
522
|
-
{"cc", "00005", kDeleteRecord},
|
|
515
|
+
{"aaa", "0005", kPutRecord}, {"b", "0002", kPutRecord},
|
|
516
|
+
{"cdd", "0002", kMergeRecord}, {"aab", "00001", kPutRecord},
|
|
517
|
+
{"cc", "00005", kPutRecord}, {"cdd", "0002", kPutRecord},
|
|
518
|
+
{"aab", "0003", kPutRecord}, {"cc", "00005", kDeleteRecord},
|
|
523
519
|
};
|
|
524
520
|
std::vector<Entry> entries_list(entries, entries + 8);
|
|
525
521
|
|
|
@@ -531,14 +527,10 @@ TEST_F(WBWIKeepTest, TestValueAsSecondaryIndex) {
|
|
|
531
527
|
batch_->Clear();
|
|
532
528
|
|
|
533
529
|
Entry new_entries[] = {
|
|
534
|
-
{"aaa", "0005", kPutRecord},
|
|
535
|
-
{"
|
|
536
|
-
{"add", "0002",
|
|
537
|
-
{"aab", "
|
|
538
|
-
{"zz", "00005", kPutRecord},
|
|
539
|
-
{"add", "0002", kPutRecord},
|
|
540
|
-
{"aab", "0003", kPutRecord},
|
|
541
|
-
{"zz", "00005", kDeleteRecord},
|
|
530
|
+
{"aaa", "0005", kPutRecord}, {"e", "0002", kPutRecord},
|
|
531
|
+
{"add", "0002", kMergeRecord}, {"aab", "00001", kPutRecord},
|
|
532
|
+
{"zz", "00005", kPutRecord}, {"add", "0002", kPutRecord},
|
|
533
|
+
{"aab", "0003", kPutRecord}, {"zz", "00005", kDeleteRecord},
|
|
542
534
|
};
|
|
543
535
|
|
|
544
536
|
entries_list = std::vector<Entry>(new_entries, new_entries + 8);
|
package/index.js
CHANGED
|
@@ -253,6 +253,10 @@ class RocksLevel extends AbstractLevel {
|
|
|
253
253
|
return new Iterator(this, this[kContext], options ?? EMPTY)
|
|
254
254
|
}
|
|
255
255
|
|
|
256
|
+
get identity () {
|
|
257
|
+
return binding.db_get_identity(this[kContext])
|
|
258
|
+
}
|
|
259
|
+
|
|
256
260
|
getProperty (property) {
|
|
257
261
|
if (typeof property !== 'string') {
|
|
258
262
|
throw new TypeError("The first argument 'property' must be a string")
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nxtedition/rocksdb",
|
|
3
|
-
"version": "7.1.
|
|
3
|
+
"version": "7.1.31",
|
|
4
4
|
"description": "A low-level Node.js RocksDB binding",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "index.js",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"rimraf": "^3.0.0",
|
|
37
37
|
"standard": "^17.0.0",
|
|
38
38
|
"tape": "^5.6.1",
|
|
39
|
-
"tempy": "^
|
|
39
|
+
"tempy": "^1.0.1"
|
|
40
40
|
},
|
|
41
41
|
"standard": {
|
|
42
42
|
"ignore": [
|
|
Binary file
|
|
Binary file
|