You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ab...@apache.org on 2019/12/05 17:28:10 UTC
[lucene-solr] branch master updated: SOLR-13831: Context property
_loop_iter_ should be a string in order to support variable expansion.
This is an automated email from the ASF dual-hosted git repository.
ab pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git
The following commit(s) were added to refs/heads/master by this push:
new d2b01ef SOLR-13831: Context property _loop_iter_ should be a string in order to support variable expansion.
d2b01ef is described below
commit d2b01ef28f918e2f3575081c206203be49889501
Author: Andrzej Bialecki <ab...@apache.org>
AuthorDate: Thu Dec 5 18:25:49 2019 +0100
SOLR-13831: Context property _loop_iter_ should be a string in order to support
variable expansion.
---
.../java/org/apache/solr/cloud/autoscaling/sim/SimScenario.java | 2 +-
.../org/apache/solr/cloud/autoscaling/sim/TestSimScenario.java | 7 +++++--
.../src/solrcloud-autoscaling-policy-preferences.adoc | 2 +-
3 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/solr/core/src/java/org/apache/solr/cloud/autoscaling/sim/SimScenario.java b/solr/core/src/java/org/apache/solr/cloud/autoscaling/sim/SimScenario.java
index 7914df7..187c66a 100644
--- a/solr/core/src/java/org/apache/solr/cloud/autoscaling/sim/SimScenario.java
+++ b/solr/core/src/java/org/apache/solr/cloud/autoscaling/sim/SimScenario.java
@@ -301,7 +301,7 @@ public class SimScenario implements AutoCloseable {
log.info(" -- abortLoop requested, aborting after " + i + " iterations.");
return;
}
- scenario.context.put(LOOP_ITER_PROP, i);
+ scenario.context.put(LOOP_ITER_PROP, String.valueOf(i));
log.info(" * iter " + (i + 1) + ":");
for (SimOp op : ops) {
op.prepareCurrentParams(scenario);
diff --git a/solr/core/src/test/org/apache/solr/cloud/autoscaling/sim/TestSimScenario.java b/solr/core/src/test/org/apache/solr/cloud/autoscaling/sim/TestSimScenario.java
index 24f7b86..6f00151 100644
--- a/solr/core/src/test/org/apache/solr/cloud/autoscaling/sim/TestSimScenario.java
+++ b/solr/core/src/test/org/apache/solr/cloud/autoscaling/sim/TestSimScenario.java
@@ -77,12 +77,15 @@ public class TestSimScenario extends SimSolrCloudTestCase {
"loop_end\n" +
"loop_start iterations=${justCalc}\n" +
" calculate_suggestions\n" +
+ " save_snapshot path=${snapshotPath}/${_loop_iter_}\n" +
"loop_end\n" +
"dump redact=true";
@Test
public void testSuggestions() throws Exception {
+ String snapshotPath = createTempDir() + "/snapshot";
try (SimScenario scenario = SimScenario.load(testSuggestionsScenario)) {
+ scenario.context.put("snapshotPath", snapshotPath);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
PrintStream ps = new PrintStream(baos, true, Charset.forName("UTF-8"));
scenario.console = ps;
@@ -101,14 +104,14 @@ public class TestSimScenario extends SimSolrCloudTestCase {
List<Map<String, Object>> snapSuggestions = (List<Map<String, Object>>)autoscalingState.get("suggestions");
assertEquals(snapSuggestions.toString(), 1, snapSuggestions.size());
// _loop_iter_ should be present and 0 (first iteration)
- assertEquals(0, scenario.context.get(SimScenario.LOOP_ITER_PROP));
+ assertEquals("0", scenario.context.get(SimScenario.LOOP_ITER_PROP));
}
// try looping more times
try (SimScenario scenario = SimScenario.load(testSuggestionsScenario)) {
scenario.context.put("iterative", "10");
scenario.context.put("justCalc", "0");
scenario.run();
- assertEquals(9, scenario.context.get(SimScenario.LOOP_ITER_PROP));
+ assertEquals("9", scenario.context.get(SimScenario.LOOP_ITER_PROP));
}
}
diff --git a/solr/solr-ref-guide/src/solrcloud-autoscaling-policy-preferences.adoc b/solr/solr-ref-guide/src/solrcloud-autoscaling-policy-preferences.adoc
index cc3373c..d776092 100644
--- a/solr/solr-ref-guide/src/solrcloud-autoscaling-policy-preferences.adoc
+++ b/solr/solr-ref-guide/src/solrcloud-autoscaling-policy-preferences.adoc
@@ -530,7 +530,7 @@ updated to contain the current values for the following properties:
* `_collections_` - a list of existing collections, or absent if there are no collections (or no live nodes)
* `_suggestions_` - a list of autoscaling suggestions generated using CREATE_SUGGESTIONS command.
* `_responses_` - a list of SolrResponse-s resulting from SOLR_REQUEST commands.
-* `_loop_iter_` - current loop iteration, or absent outside of loop.
+* `_loop_iter_` - current loop iteration (as a string), or absent outside of loop.
* `_trigger_event_<triggerName>` - last trigger event captured by WAIT_EVENT
Command parameters support variable expansion using string values from the current context (non-string values, including numeric, are ignored)