[ 
https://issues.apache.org/jira/browse/CASSANDRA-10998?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15096963#comment-15096963
 ] 

Robert Stupp commented on CASSANDRA-10998:
------------------------------------------

Note: my evaluation is probably wrong - need to investigate where the 
{{FileNotFoundException}}'s really thrown.

> Snapshots can fail during compactions
> -------------------------------------
>
>                 Key: CASSANDRA-10998
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10998
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Robert Stupp
>            Priority: Minor
>
> In an unlucky, unlikely and rare situation, a snapshot can fail when sstables 
> are removed (due to compaction) while the snapshots being taken.
> So - for example:
> # Compaction starts (compact sstable 1, 2, 3 to 4)
> # Snapshot operation starts with sstables 1, 2, 3
> # Compaction removes sstables 1, 2, 3
> # Snapshot tries to hard link to sstables 1, 2, 3 - failure
> I think it's a very rare but still possible race condition manifesting in 
> {{SSTableReader#createLinks}}, which has been mitigated by CASSANDRA-7066 for 
> 3.0 (introduced a {{File.exists}} before the actual creation of the hard 
> link).
> The problem without CASSANDRA-7066 is, that the snapshot just fails. The 
> problem with the if-clause is that the snapshot is inconsistent as it may not 
> contain all sstable components or even not all sstables without a failure.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to