rocksdb/test_util
Peter Dillinger 653c392e47 More refactoring ahead of footer & meta changes (#9240)
Summary:
I'm working on a new format_version=6 to support context
checksum (https://github.com/facebook/rocksdb/issues/9058) and this includes much of the refactoring and test
updates to support that change.

Test coverage data and manual inspection agree on dead code in
block_based_table_reader.cc (removed).

Pull Request resolved: https://github.com/facebook/rocksdb/pull/9240

Test Plan:
tests enhanced to cover more cases etc.

Extreme case performance testing indicates small % regression in fillseq (w/ compaction), though CPU profile etc. doesn't suggest any explanation. There is enhanced correctness checking in Footer::DecodeFrom, but this should be negligible.

TEST_TMPDIR=/dev/shm/ ./db_bench -benchmarks=fillseq -memtablerep=vector -allow_concurrent_memtable_write=false -num=30000000 -checksum_type=1 --disable_wal={false,true}

(Each is ops/s averaged over 50 runs, run simultaneously with competing configuration for load fairness)
Before w/ wal: 454512
After w/ wal: 444820 (-2.1%)
Before w/o wal: 1004560
After w/o wal: 998897 (-0.6%)

Since this doesn't modify WAL code, one would expect real effects to be larger in w/o wal case.

This regression will be corrected in a follow-up PR.

Reviewed By: ajkr

Differential Revision: D32813769

Pulled By: pdillinger

fbshipit-source-id: 444a244eabf3825cd329b7d1b150cddce320862f
2021-12-10 08:13:26 -08:00
..
mock_time_env.cc Add a SystemClock class to capture the time functions of an Env (#7858) 2021-01-25 22:09:11 -08:00
mock_time_env.h Make SystemClock into a Customizable Class (#8636) 2021-09-21 09:23:48 -07:00
sync_point.cc SyncPoint::Process thrashes heap ... fix it (#9023) 2021-10-15 13:30:29 -07:00
sync_point.h SyncPoint::Process thrashes heap ... fix it (#9023) 2021-10-15 13:30:29 -07:00
sync_point_impl.cc SyncPoint::Process thrashes heap ... fix it (#9023) 2021-10-15 13:30:29 -07:00
sync_point_impl.h SyncPoint::Process thrashes heap ... fix it (#9023) 2021-10-15 13:30:29 -07:00
testharness.cc Improve support for using regexes (#8740) 2021-09-07 13:05:23 -07:00
testharness.h Add (& fix) some simple source code checks (#8821) 2021-09-07 21:19:27 -07:00
testutil.cc More refactoring ahead of footer & meta changes (#9240) 2021-12-10 08:13:26 -08:00
testutil.h More refactoring ahead of footer & meta changes (#9240) 2021-12-10 08:13:26 -08:00
testutil_test.cc More Makefile Cleanup (#7097) 2020-07-09 14:35:17 -07:00
transaction_test_util.cc Update MySQLStyleTransactionTest to use SingleDelete (#9062) 2021-11-07 06:41:12 -08:00
transaction_test_util.h Replace namespace name "rocksdb" with ROCKSDB_NAMESPACE (#6433) 2020-02-20 12:09:57 -08:00