Description
DateTieredCompactionStrategy.getMaximalTask creates a compaction task for all of a tables sstables, instead of just the repaired/unrepaired subset it's responsible for.
This compacts repaired and unrepaired sstables together, effectively demoting repaired data to unrepaired. Also, since both the repaired and unrepaired strategy instances are trying to compact the same sstables, there's a 1 minute delay waiting for CompactionManager.waitForCessation to time out before anything happens.
Here's the script I used to duplicate: https://gist.github.com/bdeggleston/324f4f0df1b7273d8fd5