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 2017/06/01 06:06:40 UTC
lucene-solr:feature/autoscaling_solr7: SOLR-10419: test errors fixed
Repository: lucene-solr
Updated Branches:
refs/heads/feature/autoscaling_solr7 b4a291f4a -> b530c1397
SOLR-10419: test errors fixed
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/b530c139
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/b530c139
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/b530c139
Branch: refs/heads/feature/autoscaling_solr7
Commit: b530c1397e550e5194c942ba9c95a408f192b591
Parents: b4a291f
Author: Noble Paul <no...@apache.org>
Authored: Thu Jun 1 15:36:31 2017 +0930
Committer: Noble Paul <no...@apache.org>
Committed: Thu Jun 1 15:36:31 2017 +0930
----------------------------------------------------------------------
.../autoscaling/AutoScalingHandlerTest.java | 30 +-------------------
.../solr/cloud/autoscaling/TestPolicyCloud.java | 28 ++++++++++++++++++
.../apache/solr/cloud/autoscaling/Policy.java | 18 ++----------
3 files changed, 31 insertions(+), 45 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/b530c139/solr/core/src/test/org/apache/solr/cloud/autoscaling/AutoScalingHandlerTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/autoscaling/AutoScalingHandlerTest.java b/solr/core/src/test/org/apache/solr/cloud/autoscaling/AutoScalingHandlerTest.java
index 74fac04..44cbd67 100644
--- a/solr/core/src/test/org/apache/solr/cloud/autoscaling/AutoScalingHandlerTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/autoscaling/AutoScalingHandlerTest.java
@@ -22,23 +22,18 @@ import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.Map;
-import java.util.function.Consumer;
import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.SolrRequest;
import org.apache.solr.client.solrj.SolrResponse;
import org.apache.solr.client.solrj.SolrServerException;
-import org.apache.solr.client.solrj.embedded.JettySolrRunner;
import org.apache.solr.client.solrj.impl.CloudSolrClient;
import org.apache.solr.client.solrj.impl.HttpSolrClient;
import org.apache.solr.client.solrj.request.CollectionAdminRequest;
import org.apache.solr.client.solrj.request.V2Request;
import org.apache.solr.client.solrj.response.CollectionAdminResponse;
import org.apache.solr.cloud.SolrCloudTestCase;
-import org.apache.solr.common.cloud.DocCollection;
-import org.apache.solr.common.cloud.Replica;
import org.apache.solr.common.cloud.ZkNodeProps;
-import org.apache.solr.common.cloud.ZkStateReader;
import org.apache.solr.common.params.SolrParams;
import org.apache.solr.common.util.ContentStream;
import org.apache.solr.common.util.ContentStreamBase;
@@ -302,31 +297,8 @@ public class AutoScalingHandlerTest extends SolrCloudTestCase {
}
}
- public void testCreateCollectionAddShardUsingPolicy() throws Exception {
- JettySolrRunner jetty = cluster.getRandomJetty(random());
- int port = jetty.getLocalPort();
-
- String commands = "{set-policy :{c1 : [{replica:1 , shard:'#EACH', port: 'REPLACEPORT'}]}}".replace("REPLACEPORT",String.valueOf(port));
- Utils.fromJSONString(commands);
- cluster.getSolrClient().request(createAutoScalingRequest(SolrRequest.METHOD.POST, commands));
- Map<String, Object> json = cluster.getZkClient().getJson(ZkStateReader.SOLR_AUTOSCALING_CONF_PATH, true);
- assertEquals("full json:"+ Utils.toJSONString(json) , "#EACH",
- Utils.getObjectByPath(json, true, "/policies/c1[0]/shard"));
- CollectionAdminRequest.createCollectionWithImplicitRouter("policiesTest", null, "s1,s2", 1)
- .setPolicy("c1")
- .process(cluster.getSolrClient());
-
- DocCollection coll = getCollectionState("policiesTest");
- assertEquals("c1", coll.getPolicyName());
- assertEquals(2,coll.getReplicas().size());
- coll.forEachReplica((s, replica) -> assertEquals(jetty.getNodeName(), replica.getNodeName()));
- CollectionAdminRequest.createShard("policiesTest", "s3").process(cluster.getSolrClient());
- coll = getCollectionState("policiesTest");
- assertEquals(1, coll.getSlice("s3").getReplicas().size());
- coll.getSlice("s3").forEach(replica -> assertEquals(jetty.getNodeName(), replica.getNodeName()));
- }
- static SolrRequest createAutoScalingRequest(SolrRequest.METHOD m, String message) {
+ public static SolrRequest createAutoScalingRequest(SolrRequest.METHOD m, String message) {
return createAutoScalingRequest(m, null, message);
}
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/b530c139/solr/core/src/test/org/apache/solr/cloud/autoscaling/TestPolicyCloud.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/autoscaling/TestPolicyCloud.java b/solr/core/src/test/org/apache/solr/cloud/autoscaling/TestPolicyCloud.java
index 731a83d..27655e6 100644
--- a/solr/core/src/test/org/apache/solr/cloud/autoscaling/TestPolicyCloud.java
+++ b/solr/core/src/test/org/apache/solr/cloud/autoscaling/TestPolicyCloud.java
@@ -18,17 +18,21 @@ package org.apache.solr.cloud.autoscaling;
import java.io.IOException;
import java.lang.invoke.MethodHandles;
+import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.Map;
import org.apache.lucene.util.LuceneTestCase;
+import org.apache.solr.client.solrj.SolrRequest;
import org.apache.solr.client.solrj.SolrServerException;
+import org.apache.solr.client.solrj.embedded.JettySolrRunner;
import org.apache.solr.client.solrj.impl.SolrClientDataProvider;
import org.apache.solr.client.solrj.request.CollectionAdminRequest;
import org.apache.solr.cloud.OverseerTaskProcessor;
import org.apache.solr.cloud.SolrCloudTestCase;
import org.apache.solr.common.cloud.DocCollection;
import org.apache.solr.common.cloud.ZkStateReader;
+import org.apache.solr.common.util.Utils;
import org.apache.zookeeper.KeeperException;
import org.junit.After;
import org.junit.BeforeClass;
@@ -54,7 +58,31 @@ public class TestPolicyCloud extends SolrCloudTestCase {
public void removeCollections() throws Exception {
cluster.deleteAllCollections();
}
+ public void testCreateCollectionAddShardUsingPolicy() throws Exception {
+ JettySolrRunner jetty = cluster.getRandomJetty(random());
+ int port = jetty.getLocalPort();
+ String commands = "{set-policy :{c1 : [{replica:1 , shard:'#EACH', port: 'REPLACEPORT'}]}}".replace("REPLACEPORT",String.valueOf(port));
+ Utils.fromJSONString(commands);
+ cluster.getSolrClient().request(AutoScalingHandlerTest.createAutoScalingRequest(SolrRequest.METHOD.POST, commands));
+ Map<String, Object> json = cluster.getZkClient().getJson(ZkStateReader.SOLR_AUTOSCALING_CONF_PATH, true);
+ assertEquals("full json:"+ Utils.toJSONString(json) , "#EACH",
+ Utils.getObjectByPath(json, true, "/policies/c1[0]/shard"));
+ CollectionAdminRequest.createCollectionWithImplicitRouter("policiesTest", null, "s1,s2", 1)
+ .setPolicy("c1")
+ .process(cluster.getSolrClient());
+
+ DocCollection coll = getCollectionState("policiesTest");
+ assertEquals("c1", coll.getPolicyName());
+ assertEquals(2,coll.getReplicas().size());
+ coll.forEachReplica((s, replica) -> assertEquals(jetty.getNodeName(), replica.getNodeName()));
+ CollectionAdminRequest.createShard("policiesTest", "s3").process(cluster.getSolrClient());
+ coll = getCollectionState("policiesTest");
+ assertEquals(1, coll.getSlice("s3").getReplicas().size());
+ coll.getSlice("s3").forEach(replica -> assertEquals(jetty.getNodeName(), replica.getNodeName()));
+ cluster.getSolrClient().getZkStateReader().getZkClient().setData(ZkStateReader.SOLR_AUTOSCALING_CONF_PATH,
+ "{}".getBytes(StandardCharsets.UTF_8), true);
+ }
public void testDataProvider() throws IOException, SolrServerException, KeeperException, InterruptedException {
CollectionAdminRequest.createCollectionWithImplicitRouter("policiesTest", "conf", "shard1", 2)
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/b530c139/solr/solrj/src/java/org/apache/solr/cloud/autoscaling/Policy.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/cloud/autoscaling/Policy.java b/solr/solrj/src/java/org/apache/solr/cloud/autoscaling/Policy.java
index d753092..fce9147 100644
--- a/solr/solrj/src/java/org/apache/solr/cloud/autoscaling/Policy.java
+++ b/solr/solrj/src/java/org/apache/solr/cloud/autoscaling/Policy.java
@@ -101,27 +101,13 @@ public class Policy implements MapWriter {
this.policies.put(s, l1.stream()
.map(Clause::new)
.filter(clause -> {
+ if (!clause.isPerCollectiontag())
+ throw new RuntimeException(clause.globalTag.name + " is only allowed in 'cluster-policy'");
clause.addTags(params);
return true;
})
.sorted()
.collect(toList())));
-
- this.policies.forEach((s, c) -> {
- for (Clause clause : c) {
- if (!clause.isPerCollectiontag())
- throw new RuntimeException(clause.globalTag.name + " is only allowed in 'cluster-policy'");
- }
- });
-
-
-
- clusterPolicy.stream().forEach(new Consumer<Clause>() {
- @Override
- public void accept(Clause clause) {
- clause.addTags(params);
- }
- });
}
public List<Clause> getClusterPolicy() {