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

mattisonchao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git


The following commit(s) were added to refs/heads/master by this push:
     new 5caca1a995d [improve][meta] Fix busy-loop causes watcher can't acquire 
lock. (#19769)
5caca1a995d is described below

commit 5caca1a995d316b73e3d6a9ba2ab4fdcc02211da
Author: Qiang Zhao <[email protected]>
AuthorDate: Mon Mar 13 09:13:11 2023 +0800

    [improve][meta] Fix busy-loop causes watcher can't acquire lock. (#19769)
---
 .../main/java/org/apache/pulsar/metadata/impl/ZKSessionWatcher.java    | 3 ++-
 .../src/test/java/org/apache/pulsar/metadata/ZKSessionTest.java        | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git 
a/pulsar-metadata/src/main/java/org/apache/pulsar/metadata/impl/ZKSessionWatcher.java
 
b/pulsar-metadata/src/main/java/org/apache/pulsar/metadata/impl/ZKSessionWatcher.java
index a0247e22319..1ce01f57d4f 100644
--- 
a/pulsar-metadata/src/main/java/org/apache/pulsar/metadata/impl/ZKSessionWatcher.java
+++ 
b/pulsar-metadata/src/main/java/org/apache/pulsar/metadata/impl/ZKSessionWatcher.java
@@ -66,7 +66,8 @@ public class ZKSessionWatcher implements AutoCloseable, 
Watcher {
         this.scheduler = Executors
                 .newSingleThreadScheduledExecutor(new 
DefaultThreadFactory("metadata-store-zk-session-watcher"));
         this.task =
-                
scheduler.scheduleAtFixedRate(catchingAndLoggingThrowables(this::checkConnectionStatus),
 tickTimeMillis,
+                scheduler.scheduleWithFixedDelay(
+                        
catchingAndLoggingThrowables(this::checkConnectionStatus), tickTimeMillis,
                         tickTimeMillis,
                         TimeUnit.MILLISECONDS);
         this.currentStatus = SessionEvent.SessionReestablished;
diff --git 
a/pulsar-metadata/src/test/java/org/apache/pulsar/metadata/ZKSessionTest.java 
b/pulsar-metadata/src/test/java/org/apache/pulsar/metadata/ZKSessionTest.java
index 1757a6b991c..36cb0f132ba 100644
--- 
a/pulsar-metadata/src/test/java/org/apache/pulsar/metadata/ZKSessionTest.java
+++ 
b/pulsar-metadata/src/test/java/org/apache/pulsar/metadata/ZKSessionTest.java
@@ -40,7 +40,7 @@ import org.apache.pulsar.metadata.impl.ZKMetadataStore;
 import org.awaitility.Awaitility;
 import org.testng.annotations.Test;
 
-@Test(groups = "quarantine")
+@Test
 public class ZKSessionTest extends BaseMetadataStoreTest {
 
     @Test

Reply via email to