From 0e4bc68c2d719cd95ee7fe867c3552cb9cc0cd76 Mon Sep 17 00:00:00 2001 From: Keith Lee Date: Mon, 24 Aug 2026 08:43:44 +0100 Subject: [PATCH] [client] Fix flaky testKvSnapshotLeaseAfterCoordinatorServerRestart The lease client retries once after a metadata refresh, which can be served by a tablet server that has not yet learned the restarted coordinator's address. Wait for gateway metadata to converge after every restart instead of only the last one. --- .../java/org/apache/fluss/client/admin/FlussAdminITCase.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fluss-client/src/test/java/org/apache/fluss/client/admin/FlussAdminITCase.java b/fluss-client/src/test/java/org/apache/fluss/client/admin/FlussAdminITCase.java index 7b8cd00584..b1e1d0615b 100644 --- a/fluss-client/src/test/java/org/apache/fluss/client/admin/FlussAdminITCase.java +++ b/fluss-client/src/test/java/org/apache/fluss/client/admin/FlussAdminITCase.java @@ -1265,7 +1265,6 @@ void testKvSnapshotLeaseAfterCoordinatorServerRestart() throws Exception { assertThat(zkClient.getKvSnapshotLeaseMetadata(lease.leaseId())).isPresent(); restartCoordinatorServer(zkClient); - FLUSS_CLUSTER_EXTENSION.waitUntilAllGatewayHasSameMetadata(); lease.dropLease().get(); assertThat(zkClient.getKvSnapshotLeaseMetadata(lease.leaseId())).isNotPresent(); @@ -1278,6 +1277,9 @@ private void restartCoordinatorServer(ZooKeeperClient zkClient) throws Exception Duration.ofMinutes(1), "Coordinator server node still exists in ZooKeeper"); FLUSS_CLUSTER_EXTENSION.startCoordinatorServer(); + // The client retries once after a metadata refresh, which can be served by a tablet + // server that has not learned the new coordinator address yet, so wait for convergence. + FLUSS_CLUSTER_EXTENSION.waitUntilAllGatewayHasSameMetadata(); } @Test