This branch provides further tuning to the mv-level-work1 branch. The tuning is focused upon reducing when write throttle penalties apply and the performance between levels 2 and 3. The level 2 to 3 transition is when the code shifts from overlapped .sst files to sorted. The change slightly increases the write amplification (bad) but reduces latencies, both overall and worst case (good).
Heavy rework of penalty factors. These are close, but likely one more…
… adjustment. Mostly helps worst case latencies, not overall throughput.
tune level 3 to have size approximate to what level 2 will dump into …
…it. Do not start penalties on sorted levels until 2.5 times limit.
I've reviewed the code enough to understand what is going on and visually detect any fat fingering and such.
Besides the new tuning magic numbers, we have:
Merge pull request #76 from basho/mv-level-work2
Mv level work2