Use SpecialSkipListFactory in RecalculateScoreAfterPicking (#6125)
Summary: Test DBTestUniversalCompaction.RecalculateScoreAfterPicking was flaky on ARM, so it now uses SpecialSkipListFactory (like other tests) for predictable memtable flushes. Fixes https://github.com/facebook/rocksdb/issues/5736 Pull Request resolved: https://github.com/facebook/rocksdb/pull/6125 Test Plan: while ./db_universal_compaction_test; do :; done # for a while on ARM and on Intel (both Linux) Differential Revision: D18864821 Pulled By: pdillinger fbshipit-source-id: 2f3ca0ea66ce420dcd6d41b0ec12377112a5a79f
This commit is contained in:
parent
7d79b32618
commit
3a6d9436e8
@ -1753,13 +1753,14 @@ TEST_P(DBTestUniversalCompaction, RecalculateScoreAfterPicking) {
|
|||||||
// scheduling more; otherwise, other CFs/DBs may be delayed unnecessarily.
|
// scheduling more; otherwise, other CFs/DBs may be delayed unnecessarily.
|
||||||
const int kNumFilesTrigger = 8;
|
const int kNumFilesTrigger = 8;
|
||||||
Options options = CurrentOptions();
|
Options options = CurrentOptions();
|
||||||
|
options.memtable_factory.reset(
|
||||||
|
new SpecialSkipListFactory(KNumKeysByGenerateNewFile - 1));
|
||||||
options.compaction_options_universal.max_merge_width = kNumFilesTrigger / 2;
|
options.compaction_options_universal.max_merge_width = kNumFilesTrigger / 2;
|
||||||
options.compaction_options_universal.max_size_amplification_percent =
|
options.compaction_options_universal.max_size_amplification_percent =
|
||||||
static_cast<unsigned int>(-1);
|
static_cast<unsigned int>(-1);
|
||||||
options.compaction_style = kCompactionStyleUniversal;
|
options.compaction_style = kCompactionStyleUniversal;
|
||||||
options.level0_file_num_compaction_trigger = kNumFilesTrigger;
|
options.level0_file_num_compaction_trigger = kNumFilesTrigger;
|
||||||
options.num_levels = num_levels_;
|
options.num_levels = num_levels_;
|
||||||
options.write_buffer_size = 100 << 10; // 100KB
|
|
||||||
Reopen(options);
|
Reopen(options);
|
||||||
|
|
||||||
std::atomic<int> num_compactions_attempted(0);
|
std::atomic<int> num_compactions_attempted(0);
|
||||||
|
Loading…
Reference in New Issue
Block a user