You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by no...@apache.org on 2018/06/26 12:49:12 UTC

lucene-solr:master: SOLR-11985 : Added a test for pecentage with replica type

Repository: lucene-solr
Updated Branches:
  refs/heads/master c33bb65cf -> 7fb36c590


SOLR-11985 :  Added a test for pecentage with replica type


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/7fb36c59
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/7fb36c59
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/7fb36c59

Branch: refs/heads/master
Commit: 7fb36c59062275b3bcd810c6035c073798124e56
Parents: c33bb65
Author: noble <no...@apache.org>
Authored: Tue Jun 26 22:48:46 2018 +1000
Committer: noble <no...@apache.org>
Committed: Tue Jun 26 22:48:46 2018 +1000

----------------------------------------------------------------------
 .../solrj/cloud/autoscaling/Suggestion.java     |  1 +
 .../solrj/cloud/autoscaling/TestPolicy.java     | 27 ++++++++++++++++++++
 2 files changed, 28 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7fb36c59/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/Suggestion.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/Suggestion.java b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/Suggestion.java
index 502531b..590f720 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/Suggestion.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/Suggestion.java
@@ -174,6 +174,7 @@ public class Suggestion {
             row.forEachReplica(replicaInfo -> {
               if (replicaInfo.getCollection().equals(collection)) {
                 if (clause.getShard().op == Operand.WILDCARD || replicaInfo.getShard().equals(shard)) {
+                  if(cv.getClause().type == null || replicaInfo.getType() == cv.getClause().type)
                   totalReplicasOfInterest.incrementAndGet();
                 }
               }

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7fb36c59/solr/solrj/src/test/org/apache/solr/client/solrj/cloud/autoscaling/TestPolicy.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/test/org/apache/solr/client/solrj/cloud/autoscaling/TestPolicy.java b/solr/solrj/src/test/org/apache/solr/client/solrj/cloud/autoscaling/TestPolicy.java
index a7ba67c..3558b1a 100644
--- a/solr/solrj/src/test/org/apache/solr/client/solrj/cloud/autoscaling/TestPolicy.java
+++ b/solr/solrj/src/test/org/apache/solr/client/solrj/cloud/autoscaling/TestPolicy.java
@@ -1597,6 +1597,33 @@ public class TestPolicy extends SolrTestCaseJ4 {
     session = autoScalingConfig.getPolicy().createSession(cloudManagerWithData(dataproviderdata));
     violations = session.getViolations();
     assertEquals(0, violations.size());
+
+    dataproviderdata = "{" +
+        "  'liveNodes':[" +
+        "    '10.0.0.6:7574_solr'," +
+        "    '10.0.0.6:8983_solr']," +
+        "  'replicaInfo':{" +
+        "    '10.0.0.6:7574_solr':{}," +
+        "    '10.0.0.6:8983_solr':{'mycoll1':{" +
+        "        'shard1':[{'core_node4':{'type':'PULL'}}]," +
+        "        'shard1':[{'core_node3':{'type':'PULL'}}]," +
+        "        'shard3':[{'core_node2':{'type':'TLOG'}}]," +
+        "        'shard2':[{'core_node1':{'type':'TLOG'}}]}}}," +
+        "  'nodeValues':{" +
+        "    '10.0.0.6:7574_solr':{" +
+        "      'node':'10.0.0.6:7574_solr'," +
+        "      'cores':0}," +
+        "    '10.0.0.6:8983_solr':{" +
+        "      'node':'10.0.0.6:8983_solr'," +
+        "      'cores':2}}}";
+    autoScalingjson = "  { cluster-policy:[" +
+        "    { replica :'<51%',node:'#ANY' , type: TLOG } ,{ replica :'<51%',node:'#ANY' , type: PULL } ]," +
+        "  cluster-preferences :[{ minimize : cores }]}";
+    autoScalingConfig = new AutoScalingConfig((Map<String, Object>) Utils.fromJSONString(autoScalingjson));
+    session = autoScalingConfig.getPolicy().createSession(cloudManagerWithData(dataproviderdata));
+    violations = session.getViolations();
+    assertEquals(2, violations.size());
+
   }
 
   public void testReplicaZonesPercentage() {