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());
}