From 6e8232adffa011223e1908bd0c21968416b32751 Mon Sep 17 00:00:00 2001 From: csviri Date: Wed, 26 Oct 2022 12:01:29 +0200 Subject: [PATCH 1/2] feat: add default stop handler --- .../operator/api/config/ConfigurationService.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/config/ConfigurationService.java b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/config/ConfigurationService.java index d03cd9f2fa..0beb759d4a 100644 --- a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/config/ConfigurationService.java +++ b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/config/ConfigurationService.java @@ -5,6 +5,9 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import io.fabric8.kubernetes.api.model.HasMetadata; import io.fabric8.kubernetes.client.Config; import io.fabric8.kubernetes.client.CustomResource; @@ -150,6 +153,10 @@ default Optional getLeaderElectionConfiguration() { } default Optional getInformerStoppedHandler() { - return Optional.empty(); + return Optional.of((informer, ex) -> { + Logger log = LoggerFactory.getLogger(ConfigurationService.class); + log.error("Fatal error in informer: {}. Stopping the operator", informer, ex); + System.exit(1); + }); } } From 396e2cd86aac375dac143e3bcc89329b9a6f09a3 Mon Sep 17 00:00:00 2001 From: csviri Date: Wed, 26 Oct 2022 13:15:12 +0200 Subject: [PATCH 2/2] fix --- .../operator/api/config/ConfigurationService.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/config/ConfigurationService.java b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/config/ConfigurationService.java index 0beb759d4a..72099f7fcb 100644 --- a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/config/ConfigurationService.java +++ b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/config/ConfigurationService.java @@ -154,9 +154,11 @@ default Optional getLeaderElectionConfiguration() { default Optional getInformerStoppedHandler() { return Optional.of((informer, ex) -> { - Logger log = LoggerFactory.getLogger(ConfigurationService.class); - log.error("Fatal error in informer: {}. Stopping the operator", informer, ex); - System.exit(1); + if (ex != null) { + Logger log = LoggerFactory.getLogger(ConfigurationService.class); + log.error("Fatal error in informer: {}. Stopping the operator", informer, ex); + System.exit(1); + } }); } }