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

Marcus Eriksson commented on CASSANDRA-8267:
--------------------------------------------

To solve this we need to tell a node whether or not this is an incremental 
repair when requesting ranges from it. This breaks streaming message 
versioning, meaning we would not be able to stream between two nodes unless 
they were both upgraded, which would suck in a minor release.

One "solution" could be to only break streaming for incremental repairs (when 
they are initiated on an upgraded node) by adding a new 
IncrementalStreamRequest message and failing early if we notice that not all 
endpoints included in the incremental repair are upgraded. This would make 
old-style repairs still work since they don't use the new message (and full 
repairs are the default in 2.1).

WDYT [~yukim]? Would this be acceptable or do you have a better solution? We 
kind of have to fix this in 2.1 since it makes incremental repairs quite bad.

> Only stream from unrepaired sstables during incremental repair
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-8267
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8267
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Marcus Eriksson
>            Assignee: Marcus Eriksson
>             Fix For: 2.1.3
>
>
> Seems we stream from all sstables even if we do incremental repair, we should 
> limit this to only stream from the unrepaired sstables if we do incremental 
> repair



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

Reply via email to