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

    https://github.com/apache/cassandra/pull/269#discussion_r219278572
  
    --- Diff: src/java/org/apache/cassandra/dht/RangeStreamer.java ---
    @@ -446,16 +447,14 @@ else if (useStrictConsistency)
                              //The old behavior where we might be asked to 
fetch ranges we don't need shouldn't occur anymore.
                              //So it's an error if we don't find what we need.
                              if (oldEndpoints.isEmpty() && 
toFetch.isTransient())
    -                         {
                                  throw new AssertionError("If there are no 
endpoints to fetch from then we must be transitioning from transient to full 
for range " + toFetch);
    -                         }
     
    -                         if (!any(oldEndpoints, isSufficient))
    +                         if (toFetch.isFull() && (oldEndpoints.isEmpty() 
|| oldEndpoints.get(0).isTransient()))
                              {
                                  // need an additional replica
                                  EndpointsForRange endpointsForRange = 
sorted.apply(rangeAddresses.get(range));
                                  // include all our filters, to ensure we 
include a matching node
    -                             Optional<Replica> fullReplica = 
Iterables.<Replica>tryFind(endpointsForRange, and(isSufficient, 
testSourceFilters)).toJavaUtil();
    +                             Optional<Replica> fullReplica = 
Iterables.<Replica>tryFind(endpointsForRange, and(Replica::isFull, 
testSourceFilters)).toJavaUtil();
    --- End diff --
    
    Sure you can switch to using Replica::isFull, but isSufficient is still 
logically what we are looking for it just happens to be that nested this deep 
we have already eliminated part of the expression. I don't think this makes it 
clearer and it pairs nicely if you use isSufficient above.


---

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

Reply via email to