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 2014/11/22 02:13:47 UTC
svn commit: r1641020 -
/lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerConcurrent.java
Author: noble
Date: Sat Nov 22 01:13:46 2014
New Revision: 1641020
URL: http://svn.apache.org/r1641020
Log:
SOLR-6533 fixing test failures http://jenkins.thetaphi.de/job/Lucene-Solr-trunk-Windows/4445
Modified:
lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerConcurrent.java
Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerConcurrent.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerConcurrent.java?rev=1641020&r1=1641019&r2=1641020&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerConcurrent.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerConcurrent.java Sat Nov 22 01:13:46 2014
@@ -28,10 +28,16 @@ import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit;
+import org.apache.http.HttpEntity;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.util.EntityUtils;
import org.apache.solr.SolrTestCaseJ4;
import org.apache.solr.client.solrj.SolrServer;
import org.apache.solr.client.solrj.impl.HttpSolrServer;
import org.apache.solr.cloud.AbstractFullDistribZkTestBase;
+import org.apache.solr.common.cloud.DocCollection;
+import org.apache.solr.common.cloud.Replica;
+import org.apache.solr.common.cloud.Slice;
import org.apache.solr.common.cloud.ZkStateReader;
import org.apache.solr.core.ConfigOverlay;
import org.apache.solr.util.RESTfulServerProvider;
@@ -142,15 +148,23 @@ public class TestSolrConfigHandlerConcur
return;
}
+ DocCollection coll = cloudClient.getZkStateReader().getClusterState().getCollection("collection1");
+ List<String> urls = new ArrayList<>();
+ for (Slice slice : coll.getSlices()) {
+ for (Replica replica : slice.getReplicas())
+ urls.add(""+replica.get(ZkStateReader.BASE_URL_PROP) + "/"+replica.get(ZkStateReader.CORE_NAME_PROP));
+ }
+
+
//get another node
- RestTestHarness harness = restTestHarnesses.get(r.nextInt(restTestHarnesses.size()));
+ String url = urls.get(urls.size());
+
long startTime = System.nanoTime();
- boolean success = false;
long maxTimeoutSeconds = 20;
while ( TimeUnit.SECONDS.convert(System.nanoTime() - startTime, TimeUnit.NANOSECONDS) < maxTimeoutSeconds) {
Thread.sleep(100);
errmessages.clear();
- Map respMap = getAsMap("/config/overlay?wt=json", harness);
+ Map respMap = getAsMap(url+"/config/overlay?wt=json");
Map m = (Map) respMap.get("overlay");
if(m!= null) m = (Map) m.get("props");
if(m == null) {
@@ -177,5 +191,15 @@ public class TestSolrConfigHandlerConcur
}
-
+ private Map getAsMap(String uri) throws Exception {
+ HttpGet get = new HttpGet(uri) ;
+ HttpEntity entity = null;
+ try {
+ entity = cloudClient.getLbServer().getHttpClient().execute(get).getEntity();
+ String response = EntityUtils.toString(entity, StandardCharsets.UTF_8);
+ return (Map) ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
+ } finally {
+ EntityUtils.consumeQuietly(entity);
+ }
+ }
}