> On Feb 14, 2019, at 12:19 AM, Oleksandr Shulgin
> <oleksandr.shul...@zalando.de> wrote:
>
>> On Wed, Feb 13, 2019 at 6:47 PM Jeff Jirsa <jji...@gmail.com> wrote:
>> Depending on how bad data resurrection is, you should run it for any host
>> that loses a range. In vnodes, that's usually all hosts.
>>
>> Cleanup with LCS is very cheap. Cleanup with STCS/TWCS is a bit more work.
>
> Wait, doesn't cleanup just rewrite every SSTable one by one? Why would
> compaction strategy matter? Do you mean that after cleanup STCS may pick
> some resulting tables to re-compact them due to the min/max size difference,
> which would not be the case with LCS?
LCS has smaller, non-overlapping files. The upleveling process and
non-overlapping part makes it very likely (but not guaranteed) that within a
level, only 2 sstables will overlap a losing range.
Since cleanup only rewrites files if they’re out of range, LCS probably only
has 5 (levels) * 2 (lower and upper) * number of ranges sstables that are going
to get rewritten, where TWCS / stcs is probably going to rewrite all of them.