Skip to content

Commit 2c51ca7

Browse files
authored
fix: override executor replaces implementation event if not needed (#1874)
1 parent e63b720 commit 2c51ca7

File tree

3 files changed

+9
-8
lines changed

3 files changed

+9
-8
lines changed

operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/config/ConfigurationServiceOverrider.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import java.util.Optional;
55
import java.util.Set;
66
import java.util.concurrent.ExecutorService;
7-
import java.util.concurrent.Executors;
87
import java.util.function.Consumer;
98

109
import io.fabric8.kubernetes.client.Config;
@@ -191,13 +190,13 @@ public boolean closeClientOnStop() {
191190
@Override
192191
public ExecutorService getExecutorService() {
193192
return executorService != null ? executorService
194-
: Executors.newFixedThreadPool(concurrentReconciliationThreads());
193+
: super.getExecutorService();
195194
}
196195

197196
@Override
198197
public ExecutorService getWorkflowExecutorService() {
199198
return workflowExecutorService != null ? workflowExecutorService
200-
: Executors.newFixedThreadPool(concurrentWorkflowExecutorThreads());
199+
: super.getWorkflowExecutorService();
201200
}
202201

203202
@Override

operator-framework-core/src/test/java/io/javaoperatorsdk/operator/api/config/ConfigurationServiceOverriderTest.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,4 +120,5 @@ public <R extends HasMetadata> R clone(R object) {
120120
assertNotEquals(config.getInformerStoppedHandler(),
121121
overridden.getLeaderElectionConfiguration());
122122
}
123+
123124
}

operator-framework-core/src/test/java/io/javaoperatorsdk/operator/processing/event/EventProcessorTest.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,7 @@
1515
import org.slf4j.LoggerFactory;
1616

1717
import io.fabric8.kubernetes.api.model.HasMetadata;
18-
import io.javaoperatorsdk.operator.api.config.ConfigurationServiceProvider;
19-
import io.javaoperatorsdk.operator.api.config.ControllerConfiguration;
20-
import io.javaoperatorsdk.operator.api.config.ExecutorServiceManager;
21-
import io.javaoperatorsdk.operator.api.config.RetryConfiguration;
18+
import io.javaoperatorsdk.operator.api.config.*;
2219
import io.javaoperatorsdk.operator.api.monitoring.Metrics;
2320
import io.javaoperatorsdk.operator.processing.event.rate.LinearRateLimiter;
2421
import io.javaoperatorsdk.operator.processing.event.rate.RateLimiter;
@@ -430,7 +427,10 @@ void executionOfReconciliationShouldNotStartIfProcessorStopped() throws Interrup
430427
return PostExecutionControl.defaultDispatch();
431428
});
432429
// one event will lock the thread / executor
433-
ConfigurationServiceProvider.overrideCurrent(o -> o.withConcurrentReconciliationThreads(1));
430+
ConfigurationServiceProvider.overrideCurrent(o -> {
431+
o.withConcurrentReconciliationThreads(1);
432+
o.withMinConcurrentReconciliationThreads(1);
433+
});
434434
ExecutorServiceManager.reset();
435435
eventProcessor.start();
436436

@@ -490,6 +490,7 @@ ControllerConfiguration controllerConfiguration(Retry retry, RateLimiter rateLim
490490
when(res.getRetry()).thenReturn(retry);
491491
when(res.getRateLimiter()).thenReturn(rateLimiter);
492492
when(res.maxReconciliationInterval()).thenReturn(Optional.of(Duration.ofMillis(1000)));
493+
when(res.getConfigurationService()).thenReturn(new BaseConfigurationService());
493494
return res;
494495
}
495496

0 commit comments

Comments
 (0)