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

Sylvain Lebresne commented on CASSANDRA-13611:
----------------------------------------------

I don't disagree with the need in general, but the cleanest way to support this 
given the existing is imo to extend speculative retries a little bit. Namely, 
we almost support this with the {{ALWAYS}} speculative retry option, in that in 
that case we request 2 full data reads right away instead of 1. Note that if 
{{RF=3}} (and read_repair_chance is 0), this does exactly what the description 
wants. For higher {{RF}} though, we'll still only do 2 full data reads and use 
digests for the rest. But it feels natural to me to simply have a more 
aggressive option that does something like {{ALWAYS}} but for all replica 
instead of just '1 more than normal'. Something like {{ALWAYS_WITH_ALL}}, 
except that it's probably a terrible name.

> Digest mismatch in Quorum read
> ------------------------------
>
>                 Key: CASSANDRA-13611
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13611
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Coordination
>            Reporter: Dikang Gu
>            Assignee: Dikang Gu
>             Fix For: 4.x
>
>
> In current implementation, when we issue a quorum read, C* will send full 
> data request to one replica, and send digest requests to other replicas. If 
> the digest mismatch, C* will send another round of full data request to all 
> replicas. 
> In our environment, we find in P99 case, digest are always mismatch, so we 
> are doing 2 round trips of requests in P99, which hurts our P99 latency a lot.
> We propose that in quorum read case, we send full data replicas to the quorum 
> replicas directly, reconcile them and send back to client. In our experiment 
> , it reduced the P99 latency by 20% ~ 30%.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to