You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Blake Eggleston (JIRA)" <ji...@apache.org> on 2016/11/08 18:07:59 UTC
[jira] [Commented] (CASSANDRA-9143) Improving consistency of
repairAt field across replicas
[ https://issues.apache.org/jira/browse/CASSANDRA-9143?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15648298#comment-15648298 ]
Blake Eggleston commented on CASSANDRA-9143:
--------------------------------------------
Just wanted to point out that [~pauloricardomg] found another source of repaired data inconsistency in CASSANDRA-10446. Since streamed data includes the repairedAt value for the in progress session, if the session fails, it's possible that a node will consider data repaired that another node may have never seen.
> Improving consistency of repairAt field across replicas
> --------------------------------------------------------
>
> Key: CASSANDRA-9143
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9143
> Project: Cassandra
> Issue Type: Improvement
> Reporter: sankalp kohli
> Assignee: Blake Eggleston
> Priority: Minor
>
> We currently send an anticompaction request to all replicas. During this, a node will split stables and mark the appropriate ones repaired.
> The problem is that this could fail on some replicas due to many reasons leading to problems in the next repair.
> This is what I am suggesting to improve it.
> 1) Send anticompaction request to all replicas. This can be done at session level.
> 2) During anticompaction, stables are split but not marked repaired.
> 3) When we get positive ack from all replicas, coordinator will send another message called markRepaired.
> 4) On getting this message, replicas will mark the appropriate stables as repaired.
> This will reduce the window of failure. We can also think of "hinting" markRepaired message if required.
> Also the stables which are streaming can be marked as repaired like it is done now.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)