Support pipelined write in stress/crash tests

Summary: Closes https://github.com/facebook/rocksdb/pull/4019

Differential Revision: D8508681

Pulled By: ajkr

fbshipit-source-id: 23a3c07d642386446e322b02e69cdf70d12ef009
This commit is contained in:
Andrew Kryczka 2018-06-19 08:56:43 -07:00 committed by Facebook Github Bot
parent 8585059ae0
commit 7f3a634e06
2 changed files with 4 additions and 0 deletions

View File

@ -30,6 +30,7 @@ default_params = {
"compact_range_one_in": 1000000, "compact_range_one_in": 1000000,
"delpercent": 5, "delpercent": 5,
"destroy_db_initially": 0, "destroy_db_initially": 0,
"enable_pipelined_write": lambda: random.randint(0, 1),
"expected_values_path": expected_values_file.name, "expected_values_path": expected_values_file.name,
"max_background_compactions": 20, "max_background_compactions": 20,
"max_bytes_for_level_base": 10485760, "max_bytes_for_level_base": 10485760,

View File

@ -145,6 +145,8 @@ DEFINE_int32(value_size_mult, 8,
DEFINE_int32(compaction_readahead_size, 0, "Compaction readahead size"); DEFINE_int32(compaction_readahead_size, 0, "Compaction readahead size");
DEFINE_bool(enable_pipelined_write, false, "Pipeline WAL/memtable writes");
DEFINE_bool(verify_before_write, false, "Verify before write"); DEFINE_bool(verify_before_write, false, "Verify before write");
DEFINE_bool(histogram, false, "Print histogram of operation timings"); DEFINE_bool(histogram, false, "Print histogram of operation timings");
@ -2178,6 +2180,7 @@ class StressTest {
options_.max_subcompactions = static_cast<uint32_t>(FLAGS_subcompactions); options_.max_subcompactions = static_cast<uint32_t>(FLAGS_subcompactions);
options_.allow_concurrent_memtable_write = options_.allow_concurrent_memtable_write =
FLAGS_allow_concurrent_memtable_write; FLAGS_allow_concurrent_memtable_write;
options_.enable_pipelined_write = FLAGS_enable_pipelined_write;
options_.enable_write_thread_adaptive_yield = options_.enable_write_thread_adaptive_yield =
FLAGS_enable_write_thread_adaptive_yield; FLAGS_enable_write_thread_adaptive_yield;
options_.compaction_options_universal.size_ratio = options_.compaction_options_universal.size_ratio =