You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by cp...@apache.org on 2019/06/28 17:59:09 UTC

[lucene-solr] 02/03: SOLR-13280: Strengthen ScheduledTrigger's preferredOperation parameter validation.

This is an automated email from the ASF dual-hosted git repository.

cpoerschke pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git

commit 5d2569eab1c911e10dc166486dc66568717f6ff8
Author: Christine Poerschke <cp...@apache.org>
AuthorDate: Fri Jun 28 18:35:34 2019 +0100

    SOLR-13280: Strengthen ScheduledTrigger's preferredOperation parameter validation.
---
 solr/CHANGES.txt                                                     | 2 ++
 .../src/java/org/apache/solr/cloud/autoscaling/ScheduledTrigger.java | 5 +++++
 2 files changed, 7 insertions(+)

diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index ab99176..73bfdb4 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -193,6 +193,8 @@ Bug Fixes
 * SOLR-13574: Fix many test and test-framework classes to not fail on After/AfterClass cleanup if
   assumptions fail in Before/BeforeClass setup (hossman)
   
+* SOLR-13280: Strengthen ScheduledTrigger's preferredOperation parameter validation. (Christine Poerschke)
+
 Other Changes
 ----------------------
 
diff --git a/solr/core/src/java/org/apache/solr/cloud/autoscaling/ScheduledTrigger.java b/solr/core/src/java/org/apache/solr/cloud/autoscaling/ScheduledTrigger.java
index c1fe040..98a367c 100644
--- a/solr/core/src/java/org/apache/solr/cloud/autoscaling/ScheduledTrigger.java
+++ b/solr/core/src/java/org/apache/solr/cloud/autoscaling/ScheduledTrigger.java
@@ -34,6 +34,7 @@ import org.apache.solr.client.solrj.cloud.SolrCloudManager;
 import org.apache.solr.client.solrj.cloud.autoscaling.TriggerEventType;
 import org.apache.solr.common.SolrException;
 import org.apache.solr.common.params.AutoScalingParams;
+import org.apache.solr.common.params.CollectionParams;
 import org.apache.solr.common.util.TimeSource;
 import org.apache.solr.core.SolrResourceLoader;
 import org.apache.solr.util.DateMathParser;
@@ -80,6 +81,10 @@ public class ScheduledTrigger extends TriggerBase {
     this.graceDurationStr = (String) properties.getOrDefault("graceDuration", DEFAULT_GRACE_DURATION);
 
     preferredOp = (String) properties.get(PREFERRED_OP);
+    if (preferredOp != null &&
+        CollectionParams.CollectionAction.get(preferredOp) == null) {
+      throw new TriggerValidationException(getName(), PREFERRED_OP, "unrecognized value of: '" + preferredOp + "'");
+    }
 
     // attempt parsing to validate date math strings
     // explicitly set NOW because it may be different for simulated time