Details
-
Bug
-
Status: Resolved
-
Normal
-
Resolution: Fixed
-
None
-
None
-
2.1.13
-
Normal
Description
1. 12/29/15 https://issues.apache.org/jira/browse/CASSANDRA-10831
Moved markCompactedSSTablesReplaced out of the loop ```for (SSTableReader sstable : repairedSSTables)```
2. 1/18/16 https://issues.apache.org/jira/browse/CASSANDRA-10829
Added unmarkCompacting into the loop. ```for (SSTableReader sstable : repairedSSTables)```
I think the effect of those above change might cause the markCompactedSSTablesReplaced fail on
DataTracker.java
assert newSSTables.size() + newShadowed.size() == newSSTablesSize : String.format("Expecting new size of %d, got %d while replacing %s by %s in %s", newSSTablesSize, newSSTables.size() + newShadowed.size(), oldSSTables, replacements, this);
Since change CASSANDRA-10831 moved it out. This AssertError won't be caught, leaving the oldsstables not removed. (Then this might cause row out of order error when doing incremental repair if there are L1 un-repaired sstables.)