Github user bdeggleston commented on a diff in the pull request:

    https://github.com/apache/cassandra/pull/224#discussion_r194793477
  
    --- Diff: 
src/java/org/apache/cassandra/service/reads/AbstractReadExecutor.java ---
    @@ -269,24 +272,26 @@ public void executeAsync()
             {
                 // if CL + RR result in covering all replicas, getReadExecutor 
forces AlwaysSpeculating.  So we know
                 // that the last replica in our list is "extra."
    -            List<InetAddressAndPort> initialReplicas = 
targetReplicas.subList(0, targetReplicas.size() - 1);
    +            ReplicaList initialReplicas = targetReplicas.subList(0, 
targetReplicas.size() - 1);
    +
    +            Replicas.checkFull(initialReplicas);
     
                 if (handler.blockfor < initialReplicas.size())
                 {
                     // We're hitting additional targets for read repair.  
Since our "extra" replica is the least-
                     // preferred by the snitch, we do an extra data read to 
start with against a replica more
                     // likely to reply; better to let RR fail than the entire 
query.
    -                makeDataRequests(initialReplicas.subList(0, 2));
    +                makeDataRequests(initialReplicas.subList(0, 
2).asEndpoints());
    --- End diff --
    
    fixed


---

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to