rocksdb/tools
Levi Tamasi 01e2d33565 Add the wide-column aware merge API to the stress tests (#11906)
Summary:
Pull Request resolved: https://github.com/facebook/rocksdb/pull/11906

The patch adds stress test coverage for the wide-column aware `FullMergeV3` API by implementing a new `DBStressWideMergeOperator`. This operator is similar to `PutOperator` / `PutOperatorV2` in the sense that its result is based on the last merge operand; however, the merge result can be either a plain value or a wide-column entity, depending on the value base encoded into the operand and the value of the `use_put_entity_one_in` stress test parameter. Following the same rule for merge results that we do for writes ensures that the queries issued by the validation logic receive the expected results. The new operator is used instead of `PutOperatorV2` whenever `use_put_entity_one_in` is positive. Note that the patch also makes it possible to set `use_put_entity_one_in` and `use_merge` (but not `use_full_merge_v1`) at the same time, giving `use_put_entity_one_in` precedence, so the stress test will use `PutEntity` for writes passing the `use_put_entity_one_in` check described above and `Merge` for any other writes.

Reviewed By: jaykorean

Differential Revision: D49760024

fbshipit-source-id: 3893602c3e7935381b484f4f5026f1983e3a04a9
2023-09-29 08:54:50 -07:00
..
advisor
block_cache_analyzer Del `(object)` from 200 inc instagram-server/distillery/slipstream/thrift_models/StoryFeedMediaSticker/ttypes.py 2023-08-25 16:22:09 -07:00
dump
CMakeLists.txt
Dockerfile
analyze_txn_stress_test.sh
auto_sanity_test.sh
backup_db.sh
benchmark.sh add exe and script path check (#11621) 2023-07-19 12:05:24 -07:00
benchmark_ci.py
benchmark_compare.sh
benchmark_leveldb.sh
blob_dump.cc
check_all_python.py
check_format_compatible.sh Update files for version 8.8 (#11878) 2023-09-23 11:02:19 -07:00
db_bench.cc
db_bench_tool.cc Support compressed and local flash secondary cache stacking (#11812) 2023-09-21 20:30:53 -07:00
db_bench_tool_test.cc
db_crashtest.py Add the wide-column aware merge API to the stress tests (#11906) 2023-09-29 08:54:50 -07:00
db_repl_stress.cc
db_sanity_test.cc
dbench_monitor
generate_random_db.sh
ingest_external_sst.sh
io_tracer_parser.cc
io_tracer_parser_test.cc
io_tracer_parser_tool.cc
io_tracer_parser_tool.h
ldb.cc
ldb_cmd.cc GetEntity and PutEntity Support in ldb (#11796) 2023-09-12 16:32:40 -07:00
ldb_cmd_impl.h GetEntity and PutEntity Support in ldb (#11796) 2023-09-12 16:32:40 -07:00
ldb_cmd_test.cc
ldb_test.py GetEntity and PutEntity Support in ldb (#11796) 2023-09-12 16:32:40 -07:00
ldb_tool.cc Support single delete help message in ldb (#11493) 2023-05-31 14:24:54 -07:00
pflag
reduce_levels_test.cc Make option `level_compaction_dynamic_level_bytes` true by default (#11525) 2023-06-15 21:12:39 -07:00
regression_test.sh Fix regression script for async_io benchmarks (#11462) 2023-05-22 15:32:12 -07:00
restore_db.sh
rocksdb_dump_test.sh
run_blob_bench.sh add exe and script path check (#11621) 2023-07-19 12:05:24 -07:00
run_flash_bench.sh
run_leveldb.sh
sample-dump.dmp
simulated_hybrid_file_system.cc
simulated_hybrid_file_system.h
sst_dump.cc
sst_dump_test.cc Wide Column support in ldb (#11754) 2023-08-30 12:45:52 -07:00
sst_dump_tool.cc `sst_dump --command=verify` should verify block checksums (#11576) 2023-07-05 14:12:06 -07:00
trace_analyzer.cc
trace_analyzer_test.cc
trace_analyzer_tool.cc
trace_analyzer_tool.h
verify_random_db.sh
write_external_sst.sh
write_stress.cc
write_stress_runner.py