You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by an...@apache.org on 2015/06/17 19:09:01 UTC
svn commit: r1686079 - in /lucene/dev/branches/branch_5x: ./ solr/
solr/CHANGES.txt solr/core/
solr/core/src/java/org/apache/solr/cloud/rule/ImplicitSnitch.java
solr/core/src/test/org/apache/solr/cloud/rule/RulesTest.java
Author: andyetitmoves
Date: Wed Jun 17 17:09:00 2015
New Revision: 1686079
URL: http://svn.apache.org/r1686079
Log:
SOLR-7629: Have RulesTest consider disk space limitations of where the test is being run
Modified:
lucene/dev/branches/branch_5x/ (props changed)
lucene/dev/branches/branch_5x/solr/ (props changed)
lucene/dev/branches/branch_5x/solr/CHANGES.txt (contents, props changed)
lucene/dev/branches/branch_5x/solr/core/ (props changed)
lucene/dev/branches/branch_5x/solr/core/src/java/org/apache/solr/cloud/rule/ImplicitSnitch.java
lucene/dev/branches/branch_5x/solr/core/src/test/org/apache/solr/cloud/rule/RulesTest.java
Modified: lucene/dev/branches/branch_5x/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_5x/solr/CHANGES.txt?rev=1686079&r1=1686078&r2=1686079&view=diff
==============================================================================
--- lucene/dev/branches/branch_5x/solr/CHANGES.txt (original)
+++ lucene/dev/branches/branch_5x/solr/CHANGES.txt Wed Jun 17 17:09:00 2015
@@ -146,6 +146,9 @@ Other Changes
* SOLR-7665: deprecate the class TransformerWithContext (noble)
+* SOLR-7629: Have RulesTest consider disk space limitations of where the test is
+ being run (Christine Poerschke via Ramkumar Aiyengar)
+
================== 5.2.1 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release
Modified: lucene/dev/branches/branch_5x/solr/core/src/java/org/apache/solr/cloud/rule/ImplicitSnitch.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_5x/solr/core/src/java/org/apache/solr/cloud/rule/ImplicitSnitch.java?rev=1686079&r1=1686078&r2=1686079&view=diff
==============================================================================
--- lucene/dev/branches/branch_5x/solr/core/src/java/org/apache/solr/cloud/rule/ImplicitSnitch.java (original)
+++ lucene/dev/branches/branch_5x/solr/core/src/java/org/apache/solr/cloud/rule/ImplicitSnitch.java Wed Jun 17 17:09:00 2015
@@ -71,6 +71,12 @@ public class ImplicitSnitch extends Snit
if (params.size() > 0) ctx.invokeRemote(solrNode, params, ImplicitSnitch.class.getName(), null);
}
+ static long getUsableSpaceInGB() throws IOException {
+ long space = Files.getFileStore(Paths.get("/")).getUsableSpace();
+ long spaceInGB = space / 1024 / 1024 / 1024;
+ return spaceInGB;
+ }
+
public Map<String, Object> invoke(SolrQueryRequest req) {
Map<String, Object> result = new HashMap<>();
if (req.getParams().getInt(CORES, -1) == 1) {
@@ -79,8 +85,7 @@ public class ImplicitSnitch extends Snit
}
if (req.getParams().getInt(DISK, -1) == 1) {
try {
- long space = Files.getFileStore(Paths.get("/")).getUsableSpace();
- long spaceInGB = space / 1024 / 1024 / 1024;
+ final long spaceInGB = getUsableSpaceInGB();
result.put(DISK, spaceInGB);
} catch (IOException e) {
Modified: lucene/dev/branches/branch_5x/solr/core/src/test/org/apache/solr/cloud/rule/RulesTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_5x/solr/core/src/test/org/apache/solr/cloud/rule/RulesTest.java?rev=1686079&r1=1686078&r2=1686079&view=diff
==============================================================================
--- lucene/dev/branches/branch_5x/solr/core/src/test/org/apache/solr/cloud/rule/RulesTest.java (original)
+++ lucene/dev/branches/branch_5x/solr/core/src/test/org/apache/solr/cloud/rule/RulesTest.java Wed Jun 17 17:09:00 2015
@@ -45,6 +45,8 @@ public class RulesTest extends AbstractF
@Test
@ShardsFixed(num = 5)
public void doIntegrationTest() throws Exception {
+ final long minGB = (random().nextBoolean() ? 1 : 0);
+ assumeTrue("doIntegrationTest needs minGB="+minGB+" usable disk space", ImplicitSnitch.getUsableSpaceInGB() > minGB);
String rulesColl = "rulesColl";
try (SolrClient client = createNewSolrClient("", getBaseUrl((HttpSolrClient) clients.get(0)))) {
CollectionAdminResponse rsp;
@@ -53,7 +55,7 @@ public class RulesTest extends AbstractF
.setShards("shard1")
.setRouterName(ImplicitDocRouter.NAME)
.setReplicationFactor(2)
- .setRule("cores:<4", "node:*,replica:<2", "freedisk:>1")
+ .setRule("cores:<4", "node:*,replica:<2", "freedisk:>"+minGB)
.setSnitch("class:ImplicitSnitch");
rsp = create.process(client);
assertEquals(0, rsp.getStatus());
@@ -66,7 +68,7 @@ public class RulesTest extends AbstractF
assertEquals(3, list.size());
assertEquals ( "<4", ((Map)list.get(0)).get("cores"));
assertEquals("<2", ((Map) list.get(1)).get("replica"));
- assertEquals(">1", ((Map) list.get(2)).get("freedisk"));
+ assertEquals(">"+minGB, ((Map) list.get(2)).get("freedisk"));
list = (List) rulesCollection.get("snitch");
assertEquals(1, list.size());
assertEquals ( "ImplicitSnitch", ((Map)list.get(0)).get("class"));
@@ -126,6 +128,10 @@ public class RulesTest extends AbstractF
@Test
public void testModifyColl() throws Exception {
+ final long minGB1 = (random().nextBoolean() ? 1 : 0);
+ final long minGB2 = 5;
+ assumeTrue("testModifyColl needs minGB1="+minGB1+" usable disk space", ImplicitSnitch.getUsableSpaceInGB() > minGB1);
+ assumeTrue("testModifyColl needs minGB2="+minGB2+" usable disk space", ImplicitSnitch.getUsableSpaceInGB() > minGB2);
String rulesColl = "modifyColl";
try (SolrClient client = createNewSolrClient("", getBaseUrl((HttpSolrClient) clients.get(0)))) {
CollectionAdminResponse rsp;
@@ -133,7 +139,7 @@ public class RulesTest extends AbstractF
.setCollectionName(rulesColl)
.setNumShards(1)
.setReplicationFactor(2)
- .setRule("cores:<4", "node:*,replica:1", "freedisk:>1")
+ .setRule("cores:<4", "node:*,replica:1", "freedisk:>"+minGB1)
.setSnitch("class:ImplicitSnitch");
rsp = create.process(client);
assertEquals(0, rsp.getStatus());
@@ -143,7 +149,7 @@ public class RulesTest extends AbstractF
p.add("action", "MODIFYCOLLECTION");
p.add("rule", "cores:<5");
p.add("rule", "node:*,replica:1");
- p.add("rule", "freedisk:>5");
+ p.add("rule", "freedisk:>"+minGB2);
p.add("autoAddReplicas", "true");
client.request(new GenericSolrRequest(POST, COLLECTIONS_HANDLER_PATH, p));
}
@@ -163,7 +169,7 @@ public class RulesTest extends AbstractF
}
assertEquals("<5", ((Map) list.get(0)).get("cores"));
assertEquals("1", ((Map) list.get(1)).get("replica"));
- assertEquals(">5", ((Map) list.get(2)).get("freedisk"));
+ assertEquals(">"+minGB2, ((Map) list.get(2)).get("freedisk"));
assertEquals("true", String.valueOf(rulesCollection.getProperties().get("autoAddReplicas")));
list = (List) rulesCollection.get("snitch");
assertEquals(1, list.size());