Megan Carey created SOLR-13686: ---------------------------------- Summary: Decouple Autoscaling triggers from the actions they execute Key: SOLR-13686 URL: https://issues.apache.org/jira/browse/SOLR-13686 Project: Solr Issue Type: Improvement Security Level: Public (Default Security Level. Issues are Public) Components: AutoScaling Affects Versions: 8.0 Reporter: Megan Carey
Each of the SolrCloud Autoscaling triggers have default aboveOp/belowOp actions, but in some cases, the trigger is becoming too tightly coupled with its associated actions. This could be considered an abstraction violation, as the trigger's compute and execute actions should be separate from the trigger itself. My proposal is to separate all action-specific configs out of the existing triggers, and instead do the following: # Require that all trigger actions have a Validator, which ensures that the properties map contains valid values # During trigger configuration, pass in a properties map (essentially a JSON blob), an action name, and its associated validator ## Run the validator against the given properties to ensure that the trigger can run without encountering exceptions For example, we would make the IndexSizeTrigger action-agnostic, and remove all shard split parameters from the trigger. When we configure the trigger, we could instead pass in the desired action (e.g. shard split), the parameters for that action (e.g. splitByPrefix, splitFuzz, etc.) in a map, and a validator for that action (e.g. code to ensure that the parameters passed in have valid values; such checks are currently hard-coded into the trigger configuration). -- This message was sent by Atlassian JIRA (v7.6.14#76016) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org