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

mbalassi 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 658ad63e [FLINK-31716] Event UID field is missing the first time that 
an event is consumed
658ad63e is described below

commit 658ad63ed98010634ba385fae5992c55daa4f621
Author: Rodrigo Meneses <[email protected]>
AuthorDate: Mon Apr 3 14:26:58 2023 -0700

    [FLINK-31716] Event UID field is missing the first time that an event is 
consumed
---
 .../flink/kubernetes/operator/utils/EventUtils.java   |  4 +++-
 .../kubernetes/operator/utils/EventUtilsTest.java     | 19 ++++++++++++++++---
 2 files changed, 19 insertions(+), 4 deletions(-)

diff --git 
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/utils/EventUtils.java
 
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/utils/EventUtils.java
index d993de20..6769ce93 100644
--- 
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/utils/EventUtils.java
+++ 
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/utils/EventUtils.java
@@ -104,7 +104,9 @@ public class EventUtils {
                             .withNamespace(target.getMetadata().getNamespace())
                             .endMetadata()
                             .build();
-            client.resource(event).createOrReplace();
+
+            var ev = client.resource(event).createOrReplace();
+            event.getMetadata().setUid(ev.getMetadata().getUid());
             eventListener.accept(event);
             return true;
         }
diff --git 
a/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/utils/EventUtilsTest.java
 
b/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/utils/EventUtilsTest.java
index 9e9404e4..d5c7dd9d 100644
--- 
a/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/utils/EventUtilsTest.java
+++ 
b/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/utils/EventUtilsTest.java
@@ -19,21 +19,32 @@ package org.apache.flink.kubernetes.operator.utils;
 
 import org.apache.flink.kubernetes.operator.TestUtils;
 
+import io.fabric8.kubernetes.api.model.Event;
 import io.fabric8.kubernetes.client.KubernetesClient;
 import io.fabric8.kubernetes.client.server.mock.EnableKubernetesMockClient;
 import io.fabric8.kubernetes.client.server.mock.KubernetesMockServer;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 
+import java.util.function.Consumer;
+
 /** Test for {@link EventUtils}. */
 @EnableKubernetesMockClient(crud = true)
 public class EventUtilsTest {
 
     private KubernetesMockServer mockServer;
     private KubernetesClient kubernetesClient;
+    private Event eventConsumed = null;
 
     @Test
     public void testCreateOrReplaceEvent() {
+        var consumer =
+                new Consumer<Event>() {
+                    @Override
+                    public void accept(Event event) {
+                        eventConsumed = event;
+                    }
+                };
         var flinkApp = TestUtils.buildApplicationCluster();
         var reason = "Cleanup";
         var message = "message";
@@ -52,7 +63,7 @@ public class EventUtilsTest {
                         reason,
                         message,
                         EventRecorder.Component.Operator,
-                        e -> {}));
+                        consumer));
         var event =
                 kubernetesClient
                         .v1()
@@ -60,6 +71,8 @@ public class EventUtilsTest {
                         .inNamespace(flinkApp.getMetadata().getNamespace())
                         .withName(eventName)
                         .get();
+        Assertions.assertEquals(event.getMetadata().getUid(), 
eventConsumed.getMetadata().getUid());
+        eventConsumed = null;
         Assertions.assertNotNull(event);
         Assertions.assertEquals(1, event.getCount());
         Assertions.assertEquals(reason, event.getReason());
@@ -72,7 +85,7 @@ public class EventUtilsTest {
                         reason,
                         message,
                         EventRecorder.Component.Operator,
-                        e -> {}));
+                        consumer));
         event =
                 kubernetesClient
                         .v1()
@@ -80,7 +93,7 @@ public class EventUtilsTest {
                         .inNamespace(flinkApp.getMetadata().getNamespace())
                         .withName(eventName)
                         .get();
-
+        Assertions.assertEquals(event.getMetadata().getUid(), 
eventConsumed.getMetadata().getUid());
         Assertions.assertEquals(2, event.getCount());
     }
 

Reply via email to