@Test public void testReplicationFactorOf3WithDupes() { cpConfig.setLoadBalancingStrategy(LoadBalancingStrategy.TokenAware); cpConfig.withTokenSupplier(getTokenMapSupplier()); HostSelectionWithFallback<Integer> selection = new HostSelectionWithFallback<Integer>(cpConfig, cpMonitor); List<HostToken> hostTokens = Arrays.asList( new HostToken(1383429731L, new HostBuilder().setHostname("host-1").setPort(-1).setRack(rack1).createHost()), new HostToken(2815085496L, new HostBuilder().setHostname("host-2").setPort(-1).setRack(rack1).createHost()), new HostToken(4246741261L, new HostBuilder().setHostname("host-3").setPort(-1).setRack(rack1).createHost()), new HostToken(1383429731L, new HostBuilder().setHostname("host-4").setPort(-1).setRack(rack1).createHost()), new HostToken(2815085496L, new HostBuilder().setHostname("host-5").setPort(-1).setRack(rack1).createHost()), new HostToken(4246741261L, new HostBuilder().setHostname("host-6").setPort(-1).setRack(rack1).createHost()), new HostToken(1383429731L, new HostBuilder().setHostname("host-7").setPort(-1).setRack(rack1).createHost()), new HostToken(2815085496L, new HostBuilder().setHostname("host-8").setPort(-1).setRack(rack1).createHost()), new HostToken(4246741261L, new HostBuilder().setHostname("host-9").setPort(-1).setRack(rack1).createHost()), new HostToken(1383429731L, new HostBuilder().setHostname("host-7").setPort(-1).setRack(rack1).createHost()), new HostToken(2815085496L, new HostBuilder().setHostname("host-8").setPort(-1).setRack(rack1).createHost()), new HostToken(4246741261L, new HostBuilder().setHostname("host-9").setPort(-1).setRack(rack1).createHost()), new HostToken(1383429731L, new HostBuilder().setHostname("host-7").setPort(-1).setRack(rack1).createHost()), new HostToken(2815085496L, new HostBuilder().setHostname("host-8").setPort(-1).setRack(rack1).createHost()), new HostToken(4246741261L, new HostBuilder().setHostname("host-9").setPort(-1).setRack(rack1).createHost()) ); int rf = selection.calculateReplicationFactor(hostTokens); Assert.assertEquals(3, rf); }
int calculateReplicationFactor(List<HostToken> allHostTokens) { return HostUtils.calculateReplicationFactorForDC(allHostTokens, null, localRack); }
HostSelectionWithFallback { int calculateReplicationFactor(List<HostToken> allHostTokens) { return HostUtils.calculateReplicationFactorForDC(allHostTokens, null, localRack); } }
HostSelectionWithFallback { int calculateReplicationFactor(List<HostToken> allHostTokens) { return HostUtils.calculateReplicationFactorForDC(allHostTokens, null, localRack); } HostSelectionWithFallback(ConnectionPoolConfiguration config, ConnectionPoolMonitor monitor); }
HostSelectionWithFallback { int calculateReplicationFactor(List<HostToken> allHostTokens) { return HostUtils.calculateReplicationFactorForDC(allHostTokens, null, localRack); } HostSelectionWithFallback(ConnectionPoolConfiguration config, ConnectionPoolMonitor monitor); Connection<CL> getConnection(BaseOperation<CL, ?> op, int duration, TimeUnit unit); Connection<CL> getConnectionUsingRetryPolicy(BaseOperation<CL, ?> op, int duration, TimeUnit unit, RetryPolicy retry); Collection<Connection<CL>> getConnectionsToRing(TokenRackMapper tokenRackMapper, int duration, TimeUnit unit); void initWithHosts(Map<Host, HostConnectionPool<CL>> hPools); void addHost(Host host, HostConnectionPool<CL> hostPool); void removeHost(Host host); TokenPoolTopology createTokenPoolTopology(List<HostToken> allHostTokens); TokenPoolTopology getTokenPoolTopology(); Long getTokenForKey(String key); @Override String toString(); }
HostSelectionWithFallback { int calculateReplicationFactor(List<HostToken> allHostTokens) { return HostUtils.calculateReplicationFactorForDC(allHostTokens, null, localRack); } HostSelectionWithFallback(ConnectionPoolConfiguration config, ConnectionPoolMonitor monitor); Connection<CL> getConnection(BaseOperation<CL, ?> op, int duration, TimeUnit unit); Connection<CL> getConnectionUsingRetryPolicy(BaseOperation<CL, ?> op, int duration, TimeUnit unit, RetryPolicy retry); Collection<Connection<CL>> getConnectionsToRing(TokenRackMapper tokenRackMapper, int duration, TimeUnit unit); void initWithHosts(Map<Host, HostConnectionPool<CL>> hPools); void addHost(Host host, HostConnectionPool<CL> hostPool); void removeHost(Host host); TokenPoolTopology createTokenPoolTopology(List<HostToken> allHostTokens); TokenPoolTopology getTokenPoolTopology(); Long getTokenForKey(String key); @Override String toString();  }