During Compaction, Corrupt SSTables with rows that cause failures should be
identified and blacklisted.
-------------------------------------------------------------------------------------------------------
Key: CASSANDRA-2261
URL: https://issues.apache.org/jira/browse/CASSANDRA-2261
Project: Cassandra
Issue Type: Improvement
Components: Core
Affects Versions: 0.7.2, 0.6.11
Reporter: Benjamin Coverston
When a compaction of a set of SSTables fails because of corruption it will
continue to try to compact that SSTable causing pending compactions to build up.
One way to mitigate this problem would be to log the error, then identify the
specific SSTable that caused the failure, subsequently blacklisting that
SSTable and ensuring that it is no longer included in future compactions. For
this we could simply store the problematic SSTable's name in memory.
If it's not possible to identify the SSTable that caused the issue, then
perhaps blacklisting the (ordered) permutation of SSTables to be compacted
together is something that can be done to solve this problem in a more general
case, and avoid issues where two (or more) SSTables have trouble compacting a
particular row. For this option we would probably want to store the lists of
the bad combinations in the system table somewhere s.t. these can survive a
node failure (there have been a few cases where I have seen a compaction cause
a node failure).
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira