You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jeff Jirsa (JIRA)" <ji...@apache.org> on 2017/08/27 20:06:02 UTC
[jira] [Commented] (CASSANDRA-13165) Read repair process.
[ https://issues.apache.org/jira/browse/CASSANDRA-13165?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16143206#comment-16143206 ]
Jeff Jirsa commented on CASSANDRA-13165:
----------------------------------------
I suspect the short version is something like this:
Replica A,B,C gets CQL row 1 @ TS=1
Replica A goes offline.
Replica B, C gets CQL row 2 @ TS=2
Replica A comes up, replica B goes down
Replica A, C get CQL row 3 @ TS=3
Replica B comes up, replica C goes down
Replica A, B get CQL row 4 @ TS=4
You do a SELECT, and you get timestamps 1,3, 4 from A, 1,2, 4 FROM B, 1,2,3 from C. If A is the coordinator, it has all of the winning timestamps for its three rows, but it doesn't know that it's missing a row. When the digest mismatch happens, it still needs to do a full data read to realize it's missing row 2.
> Read repair process.
> --------------------
>
> Key: CASSANDRA-13165
> URL: https://issues.apache.org/jira/browse/CASSANDRA-13165
> Project: Cassandra
> Issue Type: Wish
> Components: Coordination
> Reporter: Andrey
> Priority: Minor
>
> Why can't we send timestamps together with digests? It will reduce unnecessary communications between coordinator and replicas. I think the size of messages is not that matter here, because a latency( due to network) is way more harmful.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org