You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Noble Paul (JIRA)" <ji...@apache.org> on 2018/06/19 03:48:00 UTC

[jira] [Updated] (SOLR-12495) Make it possible to evenly distribute replicas

     [ https://issues.apache.org/jira/browse/SOLR-12495?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Noble Paul updated SOLR-12495:
------------------------------
    Description: 
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}

  was:
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:json}
{"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:json}
{"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:json}
{"replica" : "<3"  , "shard" : "#EACH" , "port" : "8983"}{code}




> Make it possible to evenly distribute replicas
> ----------------------------------------------
>
>                 Key: SOLR-12495
>                 URL: https://issues.apache.org/jira/browse/SOLR-12495
>             Project: Solr
>          Issue Type: Sub-task
>      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-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org