Class Assign
- java.lang.Object
-
- org.apache.solr.cloud.api.collections.Assign
-
public class Assign extends Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAssign.AssignmentExceptionThrown if there is an exception while assigning nodes for replicasstatic classAssign.AssignRequeststatic classAssign.AssignRequestBuilderstatic interfaceAssign.AssignStrategyStrategy for assigning replicas to nodes.
-
Constructor Summary
Constructors Constructor Description Assign()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static StringassignCoreNodeName(DistribStateManager stateManager, DocCollection collection)static StringassignShard(DocCollection collection, Integer numShards)Assign a new unique id up to slices count - then add replicas evenly.static StringbuildSolrCoreName(String collectionName, String shard, Replica.Type type, int replicaNum)static StringbuildSolrCoreName(DistribStateManager stateManager, String collectionName, DocCollection collection, String shard, Replica.Type type, boolean newCollection)static StringbuildSolrCoreName(DistribStateManager stateManager, DocCollection collection, String shard, Replica.Type type)static Assign.AssignStrategycreateAssignStrategy(CoreContainer coreContainer)Creates the appropriate instance ofAssign.AssignStrategybased on how the cluster and/or individual collections are configured.static Collection<String>filterNonDataNodes(DistribStateManager zk, Collection<String> liveNodes)static StringgetCounterNodePath(String collection)static List<String>getLiveOrLiveAndCreateNodeSetList(Set<String> liveNodes, ZkNodeProps message, Random random, DistribStateManager zk)static List<ReplicaPosition>getNodesForNewReplicas(ClusterState clusterState, String collectionName, String shard, int nrtReplicas, int tlogReplicas, int pullReplicas, Object createNodeSet, SolrCloudManager cloudManager, CoreContainer coreContainer)static intincAndGetId(DistribStateManager stateManager, String collection, int defaultValue)
-
-
-
Method Detail
-
incAndGetId
public static int incAndGetId(DistribStateManager stateManager, String collection, int defaultValue)
-
assignCoreNodeName
public static String assignCoreNodeName(DistribStateManager stateManager, DocCollection collection)
-
assignShard
public static String assignShard(DocCollection collection, Integer numShards)
Assign a new unique id up to slices count - then add replicas evenly.- Returns:
- the assigned shard id
-
buildSolrCoreName
public static String buildSolrCoreName(String collectionName, String shard, Replica.Type type, int replicaNum)
-
buildSolrCoreName
public static String buildSolrCoreName(DistribStateManager stateManager, String collectionName, DocCollection collection, String shard, Replica.Type type, boolean newCollection)
-
buildSolrCoreName
public static String buildSolrCoreName(DistribStateManager stateManager, DocCollection collection, String shard, Replica.Type type)
-
getLiveOrLiveAndCreateNodeSetList
public static List<String> getLiveOrLiveAndCreateNodeSetList(Set<String> liveNodes, ZkNodeProps message, Random random, DistribStateManager zk)
-
filterNonDataNodes
public static Collection<String> filterNonDataNodes(DistribStateManager zk, Collection<String> liveNodes)
-
getNodesForNewReplicas
public static List<ReplicaPosition> getNodesForNewReplicas(ClusterState clusterState, String collectionName, String shard, int nrtReplicas, int tlogReplicas, int pullReplicas, Object createNodeSet, SolrCloudManager cloudManager, CoreContainer coreContainer) throws IOException, InterruptedException, Assign.AssignmentException
-
createAssignStrategy
public static Assign.AssignStrategy createAssignStrategy(CoreContainer coreContainer)
Creates the appropriate instance ofAssign.AssignStrategybased on how the cluster and/or individual collections are configured.If
PlacementPlugininstance is null this call will return a strategy fromSimplePlacementFactory, otherwisePlacementPluginAssignStrategywill be used.
-
-