whiteList.add(new InetSocketAddress(point, config.getNativeProtocolPort())); loadPolicy = new WhiteListPolicy(loadPolicy, whiteList);
return new WhiteListPolicy( childPolicy, new Predicate<Host>() {
loadBalancingPolicy = new WhiteListPolicy(loadBalancingPolicy, whiteListCollection);
@Override public Cluster.Builder createClusterBuilder() { // Only connect to node 1, which makes it easier to query system tables in // should_expose_tokens_per_host() LoadBalancingPolicy lbp = new WhiteListPolicy(new RoundRobinPolicy(), Collections.singleton(ccm().addressOfNode(1))); return Cluster.builder() .addContactPoints(getContactPoints().get(0)) .withPort(ccm().getBinaryPort()) .withLoadBalancingPolicy(lbp); }
/** * @return a {@link Cluster} instance that connects only to the control host of the given cluster. */ public static Cluster buildControlCluster(Cluster cluster, CCMAccess ccm) { Host controlHost = cluster.manager.controlConnection.connectedHost(); List<InetSocketAddress> singleAddress = Collections.singletonList(controlHost.getSocketAddress()); return Cluster.builder() .addContactPoints(controlHost.getSocketAddress().getAddress()) .withPort(ccm.getBinaryPort()) .withLoadBalancingPolicy(new WhiteListPolicy(new RoundRobinPolicy(), singleAddress)) .build(); }
private void deleteNode2RpcAddressFromNode1() throws Exception { InetSocketAddress firstHost = ccm().addressOfNode(1); Cluster cluster = register( Cluster.builder() .addContactPoints(firstHost.getAddress()) .withPort(ccm().getBinaryPort()) // ensure we will only connect to node1 .withLoadBalancingPolicy( new WhiteListPolicy( Policies.defaultLoadBalancingPolicy(), Lists.newArrayList(firstHost))) .build()); Session session = cluster.connect(); String deleteStmt = String.format( "DELETE rpc_address FROM system.peers WHERE peer = '%s'", ccm().addressOfNode(2).getHostName()); session.execute(deleteStmt); session.close(); cluster.close(); } }
@Test(groups = "short") public void should_rethrow_unavailable_in_no_host_available_exception() { LoadBalancingPolicy firstHostOnlyPolicy = new WhiteListPolicy( Policies.defaultLoadBalancingPolicy(), Collections.singletonList(host1.getSocketAddress()));
@Override public LoadBalancingPolicy build() { return new WhiteListPolicy(subPolicy.build(), whiteList); } }
@Override public LoadBalancingPolicy build() { return new WhiteListPolicy(subPolicy.build(), whiteList); } }
.addContactPointsWithPorts(sCluster.address(3)) .withPort(sCluster.getBinaryPort()) .withLoadBalancingPolicy(new WhiteListPolicy(new RoundRobinPolicy(), whiteList)) .withNettyOptions(nonQuietClusterCloseOptions) .build();
.addContactPoints(sCluster.address(5).getAddress()) .withPort(sCluster.getBinaryPort()) .withLoadBalancingPolicy(new WhiteListPolicy(new RoundRobinPolicy(), whiteList)) .withNettyOptions(nonQuietClusterCloseOptions) .build();
@Override public Cluster.Builder createClusterBuilder() { // Only connect to node 1, which makes it easier to query system tables in // should_expose_tokens_per_host() LoadBalancingPolicy lbp = new WhiteListPolicy(new RoundRobinPolicy(), Collections.singleton(ccm().addressOfNode(1))); return Cluster.builder() .addContactPoints(getContactPoints().get(0)) .withPort(ccm().getBinaryPort()) .withLoadBalancingPolicy(lbp); }
/** * @return a {@link Cluster} instance that connects only to the control host of the given cluster. */ public static Cluster buildControlCluster(Cluster cluster, CCMAccess ccm) { Host controlHost = cluster.manager.controlConnection.connectedHost(); List<InetSocketAddress> singleAddress = Collections.singletonList(controlHost.getSocketAddress()); return Cluster.builder() .addContactPoints(controlHost.getSocketAddress().getAddress()) .withPort(ccm.getBinaryPort()) .withLoadBalancingPolicy(new WhiteListPolicy(new RoundRobinPolicy(), singleAddress)) .build(); }
private void deleteNode2RpcAddressFromNode1() throws Exception { InetSocketAddress firstHost = ccm().addressOfNode(1); Cluster cluster = register( Cluster.builder() .addContactPoints(firstHost.getAddress()) .withPort(ccm().getBinaryPort()) // ensure we will only connect to node1 .withLoadBalancingPolicy( new WhiteListPolicy( Policies.defaultLoadBalancingPolicy(), Lists.newArrayList(firstHost))) .build()); Session session = cluster.connect(); String deleteStmt = String.format( "DELETE rpc_address FROM system.peers WHERE peer = '%s'", ccm().addressOfNode(2).getHostName()); session.execute(deleteStmt); session.close(); cluster.close(); } }
whiteList.add(new InetSocketAddress(point, config.getNativeProtocolPort())); loadPolicy = new WhiteListPolicy(loadPolicy, whiteList);
whiteList.add(new InetSocketAddress(point, config.getNativeProtocolPort())); loadPolicy = new WhiteListPolicy(loadPolicy, whiteList);
@Test(groups = "short") public void should_rethrow_unavailable_in_no_host_available_exception() { LoadBalancingPolicy firstHostOnlyPolicy = new WhiteListPolicy( Policies.defaultLoadBalancingPolicy(), Collections.singletonList(host1.getSocketAddress()));
.addContactPointsWithPorts(sCluster.address(3)) .withPort(sCluster.getBinaryPort()) .withLoadBalancingPolicy(new WhiteListPolicy(new RoundRobinPolicy(), whiteList)) .withNettyOptions(nonQuietClusterCloseOptions) .build();
.addContactPoints(sCluster.address(5).getAddress()) .withPort(sCluster.getBinaryPort()) .withLoadBalancingPolicy(new WhiteListPolicy(new RoundRobinPolicy(), whiteList)) .withNettyOptions(nonQuietClusterCloseOptions) .build();