rocksdb/tools
Shrikanth Shankar 4848bd0c4e Drop unnecessary deletion markers during compaction (issue - 3842) (#4289)
Summary:
This PR fixes issue 3842. We drop deletion markers iff
1. We are the bottom most level AND
2. All other occurrences of the key are in the same snapshot range as the delete

I've also enhanced db_stress_test to add an option that does a full compare of the keys. This is done by a single thread (thread # 0). For tests I've run (so far)

make check -j64
db_stress
db_stress  --acquire_snapshot_one_in=1000 --ops_per_thread=100000 /* to verify that new code doesnt break existing tests */
./db_stress --compare_full_db_state_snapshot=true --acquire_snapshot_one_in=1000 --ops_per_thread=100000 /* to verify new test code */
Pull Request resolved: https://github.com/facebook/rocksdb/pull/4289

Differential Revision: D9491165

Pulled By: shrikanthshankar

fbshipit-source-id: ce144834f31736c189aaca81bed356ba990331e2
2018-08-24 15:17:54 -07:00
..
advisor Rules Advisor: some fixes to support fetching stats from ODS (#4223) 2018-08-02 15:42:42 -07:00
dump fix gflags namespace 2017-12-01 10:42:05 -08:00
rdb Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
auto_sanity_test.sh Suppress lint in old files 2018-01-29 12:56:42 -08:00
benchmark.sh benchmark.sh to use --max_background_job 2018-03-20 18:57:55 -07:00
benchmark_leveldb.sh Suppress lint in old files 2018-01-29 12:56:42 -08:00
blob_dump.cc comment unused parameters to turn on -Wunused-parameter flag 2018-04-12 17:59:16 -07:00
check_format_compatible.sh Add compatibility test of SST ingestion (#4310) 2018-08-24 14:27:43 -07:00
CMakeLists.txt cmake support for linux and osx (#1358) 2016-09-28 11:53:15 -07:00
db_bench.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
db_bench_tool.cc Digest ZSTD compression dictionary once per SST file (#4251) 2018-08-23 19:28:18 -07:00
db_bench_tool_test.cc Per-thread unique test db names (#4135) 2018-07-13 17:27:39 -07:00
db_crashtest.py Extend stress test to format_version 4 (#4265) 2018-08-14 14:13:33 -07:00
db_repl_stress.cc comment unused parameters to turn on -Wunused-parameter flag 2018-04-12 17:59:16 -07:00
db_sanity_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
db_stress.cc Drop unnecessary deletion markers during compaction (issue - 3842) (#4289) 2018-08-24 15:17:54 -07:00
dbench_monitor Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
Dockerfile adding docker build script and dockerfile 2015-05-22 16:03:39 -07:00
generate_random_db.sh Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
ingest_external_sst.sh Add compatibility test of SST ingestion (#4310) 2018-08-24 14:27:43 -07:00
ldb.cc comment unused parameters to turn on -Wunused-parameter flag 2018-04-12 17:59:16 -07:00
ldb_cmd.cc GetAllKeyVersions() to take an extra argument of max_num_ikeys. (#4271) 2018-08-16 15:57:08 -07:00
ldb_cmd_impl.h Add SST ingestion to ldb (#4205) 2018-08-09 14:29:11 -07:00
ldb_cmd_test.cc fix memory leak in two_level_iterator 2018-04-15 17:26:26 -07:00
ldb_test.py Add SST ingestion to ldb (#4205) 2018-08-09 14:29:11 -07:00
ldb_tool.cc Add SST ingestion to ldb (#4205) 2018-08-09 14:29:11 -07:00
pflag Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
reduce_levels_test.cc Per-thread unique test db names (#4135) 2018-07-13 17:27:39 -07:00
regression_test.sh Suppress lint in old files 2018-01-29 12:56:42 -08:00
report_lite_binary_size.sh Legocastle job to report lite build binary size to scuba 2018-02-15 17:27:24 -08:00
rocksdb_dump_test.sh Suppress lint in old files 2018-01-29 12:56:42 -08:00
run_flash_bench.sh Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
run_leveldb.sh Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
sample-dump.dmp First version of rocksdb_dump and rocksdb_undump. 2015-06-19 16:24:36 -07:00
sst_dump.cc comment unused parameters to turn on -Wunused-parameter flag 2018-04-12 17:59:16 -07:00
sst_dump_test.cc Add path to WritableFileWriter. (#4039) 2018-08-23 10:12:58 -07:00
sst_dump_tool.cc Add path to WritableFileWriter. (#4039) 2018-08-23 10:12:58 -07:00
sst_dump_tool_imp.h Move prefix_extractor to MutableCFOptions 2018-05-21 14:43:11 -07:00
trace_analyzer.cc RocksDB Trace Analyzer (#4091) 2018-08-13 11:44:02 -07:00
trace_analyzer_test.cc Add the unit test of Iterator to trace_analyzer_test (#4282) 2018-08-23 17:28:32 -07:00
trace_analyzer_tool.cc Add the unit test of Iterator to trace_analyzer_test (#4282) 2018-08-23 17:28:32 -07:00
trace_analyzer_tool.h RocksDB Trace Analyzer (#4091) 2018-08-13 11:44:02 -07:00
verify_random_db.sh tools/check_format_compatible.sh to cover forward option reading too (#3994) 2018-06-15 11:12:29 -07:00
write_external_sst.sh Add compatibility test of SST ingestion (#4310) 2018-08-24 14:27:43 -07:00
write_stress.cc Compilation fixes for powerpc build, -Wparentheses-equality error and missing header guards 2018-02-09 14:12:43 -08:00
write_stress_runner.py Suppress lint in old files 2018-01-29 12:56:42 -08:00