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

    https://github.com/apache/cassandra/pull/224#discussion_r197130101
  
    --- Diff: 
src/java/org/apache/cassandra/locator/OldNetworkTopologyStrategy.java ---
    @@ -36,27 +36,30 @@
      */
     public class OldNetworkTopologyStrategy extends AbstractReplicationStrategy
     {
    +    private final ReplicationFactor rf;
         public OldNetworkTopologyStrategy(String keyspaceName, TokenMetadata 
tokenMetadata, IEndpointSnitch snitch, Map<String, String> configOptions)
         {
             super(keyspaceName, tokenMetadata, snitch, configOptions);
    +        this.rf = 
ReplicationFactor.fromString(this.configOptions.get("replication_factor"));
         }
     
    -    public List<InetAddressAndPort> calculateNaturalEndpoints(Token token, 
TokenMetadata metadata)
    +    public ReplicaList calculateNaturalReplicas(Token token, TokenMetadata 
metadata)
         {
    -        int replicas = getReplicationFactor();
    -        List<InetAddressAndPort> endpoints = new ArrayList<>(replicas);
    +        ReplicaList replicas = new ReplicaList(rf.replicas);
             ArrayList<Token> tokens = metadata.sortedTokens();
     
             if (tokens.isEmpty())
    -            return endpoints;
    +            return replicas;
     
             Iterator<Token> iter = TokenMetadata.ringIterator(tokens, token, 
false);
             Token primaryToken = iter.next();
    -        endpoints.add(metadata.getEndpoint(primaryToken));
    +        Token previousToken = metadata.getPredecessor(primaryToken);
    +        assert rf.trans == 0: "support transient replicas";
    --- End diff --
    
    Should we move an assert to the top?


---

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

Reply via email to