[ https://issues.apache.org/jira/browse/SOLR-12495?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16520943#comment-16520943 ]
Noble Paul commented on SOLR-12495: ----------------------------------- bq.I see; could {"core": "#MINIMUM", "node": "#ANY"} be included with this issue? Along with per-collection balancing, we'll also need cluster-wide balancing. well we already have a global preference which says {code} {"minimize" : "cores"} {code} Is there anything that's not already addressed by that? I understand that it won't show any violations if you are already in an imbalanced state. The problem with implementing a feature like this that you can clearly have conflicts if you create 2 rules as follows. This can always lead to violations which are impossible to satisfy {code} {"cores" : "#MINIMUM", "node" : "#ANY"} {"replica" : "#MINIMUM", "shard" : "#EACH", "node" : "#ANY"} {code} > Enhance the Autoscaling policy syntax to evenly distribute replicas > ------------------------------------------------------------------- > > Key: SOLR-12495 > URL: https://issues.apache.org/jira/browse/SOLR-12495 > Project: Solr > Issue Type: New Feature > Security Level: Public(Default Security Level. Issues are Public) > Components: AutoScaling > Reporter: Noble Paul > Priority: Major > > Support a new function value for {{replica= "#MINIMUM"}} > {{#MINIMUM}} means the minimum computed value for the given configuration > the value of replica will be calculated as {{<= > Math.ceil(number_of_replicas/number_of_valid_nodes) }} > *example 1:* > {code:java} > {"replica" : "#MINIMUM" , "shard" : "#EACH" , "node" : "#ANY"} > {code} > *case 1* : nodes=3, replicationFactor=4 > the value of replica will be calculated as {{Math.ceil(4/3) = 2}} > current state : nodes=3, replicationFactor=2 > this is equivalent to the hard coded rule > {code:java} > {"replica" : "<3" , "shard" : "#EACH" , "node" : "#ANY"} > {code} > *case 2* : > current state : nodes=3, replicationFactor=2 > this is equivalent to the hard coded rule > {code:java} > {"replica" : "<3" , "shard" : "#EACH" , "node" : "#ANY"} > {code} > *example:2* > {code} > {"replica" : "#MINIMUM" , "node" : "#ANY"}{code} > case 1: numShards = 2, replicationFactor=3, nodes = 5 > this is equivalent to the hard coded rule > {code:java} > {"replica" : "<3" , "node" : "#ANY"} > {code} > *example:3* > {code} > {"replica" : "<2" , "shard" : "#EACH" , "port" : "8983"}{code} > case 1: {{replicationFactor=3, nodes with port 8983 = 2}} > this is equivalent to the hard coded rule > {code} > {"replica" : "<3" , "shard" : "#EACH" , "port" : "8983"}{code} -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org