1[Rule "single-condition-false"]
2suggestions=inc-bg-flush:inc-write-buffer
3conditions=log-4-false
4
5[Rule "multiple-conds-true"]
6suggestions=inc-write-buffer
7conditions=log-1-true:log-2-true:log-3-true
8
9[Rule "multiple-conds-one-false"]
10suggestions=inc-bg-flush
11conditions=log-1-true:log-4-false:log-3-true
12
13[Rule "multiple-conds-all-false"]
14suggestions=l0-l1-ratio-health-check
15conditions=log-4-false:options-1-false
16
17[Condition "log-1-true"]
18source=LOG
19regex=Stopping writes because we have \d+ immutable memtables \(waiting for flush\), max_write_buffer_number is set to \d+
20
21[Condition "log-2-true"]
22source=LOG
23regex=Stalling writes because we have \d+ level-0 files
24
25[Condition "log-3-true"]
26source=LOG
27regex=Stopping writes because we have \d+ level-0 files
28
29[Condition "log-4-false"]
30source=LOG
31regex=Stalling writes because of estimated pending compaction bytes \d+
32
33[Condition "options-1-false"]
34source=OPTIONS
35options=CFOptions.level0_file_num_compaction_trigger:CFOptions.write_buffer_size:DBOptions.random_access_max_buffer_size
36evaluate=int(options[0])*int(options[1])-int(options[2])<0  # should evaluate to a boolean
37
38[Suggestion "inc-bg-flush"]
39option=DBOptions.max_background_flushes
40action=increase
41
42[Suggestion "inc-write-buffer"]
43option=CFOptions.max_write_buffer_number
44action=increase
45
46[Suggestion "l0-l1-ratio-health-check"]
47description='modify options such that (level0_file_num_compaction_trigger * write_buffer_size - max_bytes_for_level_base < 5) is satisfied'
48