public ClientSnitchCtx(SnitchInfo perSnitch, String node, Map<String, Object> session, CloudSolrClient solrClient) { super(perSnitch, node, session); this.solrClient = solrClient; this.zkClientClusterStateProvider = (ZkClientClusterStateProvider) solrClient.getClusterStateProvider(); }
@Override public ClusterStateProvider getClusterStateProvider() { return solrClient.getClusterStateProvider(); }
protected ClusterStateProvider getClusterStateProvider() { return solrClient.getClusterStateProvider(); }
/** * Configure, run and return the {@link MiniSolrCloudCluster} * @throws Exception if an error occurs on startup */ public MiniSolrCloudCluster build() throws Exception { MiniSolrCloudCluster cluster = new MiniSolrCloudCluster(nodeCount, baseDir, solrxml, jettyConfig, null, securityJson); CloudSolrClient client = cluster.getSolrClient(); for (Config config : configs) { ((ZkClientClusterStateProvider)client.getClusterStateProvider()).uploadConfig(config.path, config.name); } if (clusterProperties.size() > 0) { ClusterProperties props = new ClusterProperties(cluster.getSolrClient().getZkStateReader().getZkClient()); for (Map.Entry<String, String> entry : clusterProperties.entrySet()) { props.setClusterProperty(entry.getKey(), entry.getValue()); } } return cluster; }
if (directUpdatesToLeadersOnly && leader == null) { for (Replica replica : slice.getReplicas( replica -> replica.isActive(getClusterStateProvider().getLiveNodes()) && replica.getType() == Replica.Type.NRT)) { leader = replica;