You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by gy...@apache.org on 2022/08/10 10:31:48 UTC

[flink-kubernetes-operator] branch main updated: [FLINK-28869] Emit a warning event for ClusterDeploymentException

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

gyfora pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/flink-kubernetes-operator.git


The following commit(s) were added to refs/heads/main by this push:
     new 0267c916 [FLINK-28869] Emit a warning event for ClusterDeploymentException
0267c916 is described below

commit 0267c9166b3523edbb209112012af9f92a94fb16
Author: Xin Hao <ha...@gmail.com>
AuthorDate: Wed Aug 10 18:31:43 2022 +0800

    [FLINK-28869] Emit a warning event for ClusterDeploymentException
---
 .../controller/FlinkDeploymentController.java        |  6 ++++++
 .../controller/FlinkDeploymentControllerTest.java    | 20 ++++++++++++++++++++
 2 files changed, 26 insertions(+)

diff --git a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkDeploymentController.java b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkDeploymentController.java
index a43d9ccd..48fad9d7 100644
--- a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkDeploymentController.java
+++ b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkDeploymentController.java
@@ -116,6 +116,12 @@ public class FlinkDeploymentController
         } catch (DeploymentFailedException dfe) {
             handleDeploymentFailed(flinkApp, dfe);
         } catch (Exception e) {
+            eventRecorder.triggerEvent(
+                    flinkApp,
+                    EventRecorder.Type.Warning,
+                    "ClusterDeploymentException",
+                    e.getMessage(),
+                    EventRecorder.Component.JobManagerDeployment);
             throw new ReconciliationException(e);
         }
 
diff --git a/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/controller/FlinkDeploymentControllerTest.java b/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/controller/FlinkDeploymentControllerTest.java
index d80f8cb7..298da8fd 100644
--- a/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/controller/FlinkDeploymentControllerTest.java
+++ b/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/controller/FlinkDeploymentControllerTest.java
@@ -890,6 +890,26 @@ public class FlinkDeploymentControllerTest {
         assertTrue(event.getMessage().startsWith("Job parallelism "));
     }
 
+    @Test
+    public void testEventOfNonDeploymentFailedException() throws Exception {
+        assertTrue(testController.events().isEmpty());
+        var flinkDeployment = TestUtils.buildApplicationCluster();
+
+        flinkService.setDeployFailure(true);
+        try {
+            testController.reconcile(flinkDeployment, context);
+            fail();
+        } catch (Exception expected) {
+        }
+        assertEquals(2, testController.events().size());
+
+        var event = testController.events().remove();
+        assertEquals("Submit", event.getReason());
+        event = testController.events().remove();
+        assertEquals("ClusterDeploymentException", event.getReason());
+        assertEquals("Deployment failure", event.getMessage());
+    }
+
     @Test
     public void cleanUpNewDeployment() {
         FlinkDeployment flinkDeployment = TestUtils.buildApplicationCluster();