rocksdb/db_stress_tool
Andrew Kryczka a6a6aad74e db_stress support tracking historical values (#8960)
Summary:
When `--sync_fault_injection` is set, this PR takes a snapshot of the expected values and starts an operation trace when the DB is opened. These files are stored in `--expected_values_dir`. They will be used for recovering the expected state of the DB following a crash where a suffix of unsynced operations are allowed to be lost.

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

Test Plan: injected crashed at various points in `FileExpectedStateManager` and verified the next run recovers the state/trace file with highest seqno and removes all older/temporary files. Note we don't use sync_fault_injection in CI crash tests yet.

Reviewed By: pdillinger

Differential Revision: D31194941

Pulled By: ajkr

fbshipit-source-id: b0f935a529a0186c5a9c7709fcaa8829de8a84cf
2021-12-07 13:41:48 -08:00
..
batched_ops_stress.cc db_stress support tracking historical values (#8960) 2021-12-07 13:41:48 -08:00
cf_consistency_stress.cc db_stress support tracking historical values (#8960) 2021-12-07 13:41:48 -08:00
CMakeLists.txt Experimental support for SST unique IDs (#8990) 2021-10-18 23:32:01 -07:00
db_stress_common.cc Add user-defined timestamps to db_stress (#8061) 2021-03-23 05:13:30 -07:00
db_stress_common.h Support readahead during compaction for blob files (#9187) 2021-11-19 17:53:47 -08:00
db_stress_compaction_filter.h Prevent deadlock in db_stress with DbStressCompactionFilter (#8956) 2021-09-24 16:54:02 -07:00
db_stress_driver.cc Use SystemClock* instead of std::shared_ptr<SystemClock> in lower level routines (#8033) 2021-03-15 04:34:11 -07:00
db_stress_driver.h Replace namespace name "rocksdb" with ROCKSDB_NAMESPACE (#6433) 2020-02-20 12:09:57 -08:00
db_stress_env_wrapper.h db_stress to add --open_metadata_write_fault_one_in (#8235) 2021-04-28 10:58:05 -07:00
db_stress_gflags.cc db_stress support tracking historical values (#8960) 2021-12-07 13:41:48 -08:00
db_stress_listener.cc db_stress: db_stress segmentation fault (#9219) 2021-11-30 14:56:13 -08:00
db_stress_listener.h Fix stress/crash test handling of SST unique IDs (#9054) 2021-10-19 11:52:07 -07:00
db_stress_shared_state.cc Silence false alarms in db_stress fault injection (#6741) 2020-04-24 13:06:12 -07:00
db_stress_shared_state.h db_stress support tracking historical values (#8960) 2021-12-07 13:41:48 -08:00
db_stress_stat.h Use SystemClock* instead of std::shared_ptr<SystemClock> in lower level routines (#8033) 2021-03-15 04:34:11 -07:00
db_stress_table_properties_collector.h Fix and detect headers with missing dependencies (#8893) 2021-09-10 10:00:26 -07:00
db_stress_test_base.cc db_stress support tracking historical values (#8960) 2021-12-07 13:41:48 -08:00
db_stress_test_base.h db_stress support tracking historical values (#8960) 2021-12-07 13:41:48 -08:00
db_stress_tool.cc Stress test to inject read failures in DB reopen (#8476) 2021-07-06 11:05:27 -07:00
db_stress.cc Add (& fix) some simple source code checks (#8821) 2021-09-07 21:19:27 -07:00
expected_state.cc db_stress support tracking historical values (#8960) 2021-12-07 13:41:48 -08:00
expected_state.h db_stress support tracking historical values (#8960) 2021-12-07 13:41:48 -08:00
no_batched_ops_stress.cc db_stress support tracking historical values (#8960) 2021-12-07 13:41:48 -08:00