diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt index ecfeedc3495..5166da7cbd3 100644 --- a/solr/CHANGES.txt +++ b/solr/CHANGES.txt @@ -107,6 +107,8 @@ Bug Fixes * SOLR-10714: OverseerTriggerThread does not start triggers on overseer start until autoscaling config watcher is fired. (shalin) +* SOLR-10738: TriggerAction is initialised even if the trigger is never scheduled. (shalin) + Optimizations ---------------------- diff --git a/solr/core/src/java/org/apache/solr/cloud/autoscaling/NodeAddedTrigger.java b/solr/core/src/java/org/apache/solr/cloud/autoscaling/NodeAddedTrigger.java index 5a340bec3c8..1754a8be3dd 100644 --- a/solr/core/src/java/org/apache/solr/cloud/autoscaling/NodeAddedTrigger.java +++ b/solr/core/src/java/org/apache/solr/cloud/autoscaling/NodeAddedTrigger.java @@ -70,7 +70,6 @@ public class NodeAddedTrigger implements AutoScaling.Trigger(3); for (Map map : o) { TriggerAction action = container.getResourceLoader().newInstance(map.get("class"), TriggerAction.class); - action.init(map); actions.add(action); } } else { diff --git a/solr/core/src/java/org/apache/solr/cloud/autoscaling/NodeLostTrigger.java b/solr/core/src/java/org/apache/solr/cloud/autoscaling/NodeLostTrigger.java index 385eca51131..8bca93c861d 100644 --- a/solr/core/src/java/org/apache/solr/cloud/autoscaling/NodeLostTrigger.java +++ b/solr/core/src/java/org/apache/solr/cloud/autoscaling/NodeLostTrigger.java @@ -70,7 +70,6 @@ public class NodeLostTrigger implements AutoScaling.Trigger(3); for (Map map : o) { TriggerAction action = container.getResourceLoader().newInstance(map.get("class"), TriggerAction.class); - action.init(map); actions.add(action); } } else { diff --git a/solr/core/src/java/org/apache/solr/cloud/autoscaling/ScheduledTriggers.java b/solr/core/src/java/org/apache/solr/cloud/autoscaling/ScheduledTriggers.java index 8dfbddf9910..9c18ac2ad22 100644 --- a/solr/core/src/java/org/apache/solr/cloud/autoscaling/ScheduledTriggers.java +++ b/solr/core/src/java/org/apache/solr/cloud/autoscaling/ScheduledTriggers.java @@ -143,6 +143,10 @@ public class ScheduledTriggers implements Closeable { return false; } }); + List actions = newTrigger.getActions(); + for (TriggerAction action : actions) { + action.init(newTrigger.getProperties()); + } scheduledTrigger.scheduledFuture = scheduledThreadPoolExecutor.scheduleWithFixedDelay(scheduledTrigger, 0, DEFAULT_SCHEDULED_TRIGGER_DELAY_SECONDS, TimeUnit.SECONDS); } diff --git a/solr/core/src/test/org/apache/solr/cloud/autoscaling/TriggerIntegrationTest.java b/solr/core/src/test/org/apache/solr/cloud/autoscaling/TriggerIntegrationTest.java index 0ac8183122c..db15f6c6f86 100644 --- a/solr/core/src/test/org/apache/solr/cloud/autoscaling/TriggerIntegrationTest.java +++ b/solr/core/src/test/org/apache/solr/cloud/autoscaling/TriggerIntegrationTest.java @@ -473,8 +473,7 @@ public class TriggerIntegrationTest extends SolrCloudTestCase { public static class TestTriggerAction implements TriggerAction { public TestTriggerAction() { - log.info("TestTriggerAction instantiated"); - actionCreated.countDown(); + } @Override @@ -507,7 +506,8 @@ public class TriggerIntegrationTest extends SolrCloudTestCase { @Override public void init(Map args) { - + log.info("TestTriggerAction init"); + actionCreated.countDown(); } } }