v2 attached that makes cleanup-during-compaction always-on. (v2 also switches from comparing based on table name to checking for LocalStrateg, and moves indexColumns list internal to rmIdxRenewCounter.)
this highlights a problem, though – some tests now fail, because StorageService.getLocalRanges will return an empty list until StorageService initializes it. (I think this is either via loading the stored ring through initServer, or via gossip filling things in. Not really sure how gossip fills in my own token if we don't load from the system table. Bit of a mess here.)
So (a) obviously this is a bit fragile for the tests. But is there potential for us to also throw away data that we shouldn't if we get behind on gossip somehow? At the very least I think we need to include pending ranges for the local node.
Nit: ISTM we ought to be able to move LCR's Iterable<OnDiskAtom> into AbstractCompactedRow, but I'm not actually sure how to make generics happy w/ the PR subclass returning Iterator<Column>.