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

Nicolas Favre-Felix commented on CASSANDRA-4482:
------------------------------------------------

A node wouldn't have missed A because of a compaction but because A was not 
inserted there, since S is not built from the existing data on disk but 
incrementally with each change: S really represents the _combined history of 
all the changes_ performed on the token range since the last repair session.
So nodes don't have to scan their data to build S, they simply start with S=0 
when incremental repair is first enabled regardless of their initial 
differences and start again with S=0 after each incremental repair session.

But it is indeed possible for two replicas to have the same data but differing 
values for S, for instance if a replica gets A and A' whereas another misses A 
but gets A': this would lead to some unnecessary streaming even though they 
both have the latest value A'. This could be avoided by removing A from S as 
you suggest, but the cost of doing random I/O after each write is too 
expensive, as you pointed out earlier.

We are open to suggestions on how to improve this process and get this feature 
upstreamed with these issues addressed or understood as inherent limitations.
                
> In-memory merkle trees for repair
> ---------------------------------
>
>                 Key: CASSANDRA-4482
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4482
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Marcus Eriksson
>
> this sounds cool, we should reimplement it in the open source cassandra;
> http://www.acunu.com/2/post/2012/07/incremental-repair.html

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to