From a7d9b8c82ce5372b77cf7874b30b056d892b28eb Mon Sep 17 00:00:00 2001 From: Leo Li Date: Fri, 8 Mar 2024 11:25:46 -0500 Subject: [PATCH 1/2] running 10 times to reproduce the error --- .../knative/eventing/kafka/broker/core/file/FileWatcherTest.java | 1 + 1 file changed, 1 insertion(+) diff --git a/data-plane/core/src/test/java/dev/knative/eventing/kafka/broker/core/file/FileWatcherTest.java b/data-plane/core/src/test/java/dev/knative/eventing/kafka/broker/core/file/FileWatcherTest.java index cc5d3cce7e..d0eab18711 100644 --- a/data-plane/core/src/test/java/dev/knative/eventing/kafka/broker/core/file/FileWatcherTest.java +++ b/data-plane/core/src/test/java/dev/knative/eventing/kafka/broker/core/file/FileWatcherTest.java @@ -43,6 +43,7 @@ public void tearDown() throws Exception { } @Test + @RepeatedTest(10) public void testFileModification() throws Exception { // Set up a counter to track how many times the trigger function is called AtomicInteger counter = new AtomicInteger(0); From 8b0d89d91e0221c540456cdc2d3b9848a304b4ea Mon Sep 17 00:00:00 2001 From: Leo Li Date: Fri, 8 Mar 2024 14:27:01 -0500 Subject: [PATCH 2/2] Adding the Thread sleep --- .../eventing/kafka/broker/core/file/FileWatcher.java | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/data-plane/core/src/main/java/dev/knative/eventing/kafka/broker/core/file/FileWatcher.java b/data-plane/core/src/main/java/dev/knative/eventing/kafka/broker/core/file/FileWatcher.java index 9e3ee1d29a..d41fcc82a7 100644 --- a/data-plane/core/src/main/java/dev/knative/eventing/kafka/broker/core/file/FileWatcher.java +++ b/data-plane/core/src/main/java/dev/knative/eventing/kafka/broker/core/file/FileWatcher.java @@ -15,10 +15,8 @@ */ package dev.knative.eventing.kafka.broker.core.file; -import static java.nio.file.StandardWatchEventKinds.ENTRY_CREATE; -import static java.nio.file.StandardWatchEventKinds.ENTRY_DELETE; -import static java.nio.file.StandardWatchEventKinds.ENTRY_MODIFY; -import static java.nio.file.StandardWatchEventKinds.OVERFLOW; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.io.IOException; @@ -27,8 +25,8 @@ import java.nio.file.WatchService; import java.util.Objects; import java.util.concurrent.CountDownLatch; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; + +import static java.nio.file.StandardWatchEventKinds.*; /** * This class is responsible for watching a given file and reports update or execute a trigger function. @@ -128,6 +126,7 @@ public void run() { WatchKey key; try { key = watcher.take(); + Thread.sleep( 50 ); logger.debug("Contract updates"); } catch (InterruptedException e) { break; // Thread.interrupt was invoked