You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by lh...@apache.org on 2026/03/12 16:57:06 UTC
(pulsar) branch master updated: [fix][test] Fix flaky OneWayReplicatorUsingGlobalZKTest cleanup (#25313)
This is an automated email from the ASF dual-hosted git repository.
lhotari 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 d0fa3637e4c [fix][test] Fix flaky OneWayReplicatorUsingGlobalZKTest cleanup (#25313)
d0fa3637e4c is described below
commit d0fa3637e4c652cd313ec9830433074b87924ac3
Author: Matteo Merli <mm...@apache.org>
AuthorDate: Thu Mar 12 09:57:00 2026 -0700
[fix][test] Fix flaky OneWayReplicatorUsingGlobalZKTest cleanup (#25313)
---
.../apache/pulsar/broker/service/OneWayReplicatorTestBase.java | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/pulsar-broker/src/test/java/org/apache/pulsar/broker/service/OneWayReplicatorTestBase.java b/pulsar-broker/src/test/java/org/apache/pulsar/broker/service/OneWayReplicatorTestBase.java
index 2682be1fe11..adc363cf7cd 100644
--- a/pulsar-broker/src/test/java/org/apache/pulsar/broker/service/OneWayReplicatorTestBase.java
+++ b/pulsar-broker/src/test/java/org/apache/pulsar/broker/service/OneWayReplicatorTestBase.java
@@ -306,8 +306,14 @@ public abstract class OneWayReplicatorTestBase extends TestRetrySupport {
if (!usingGlobalZK) {
admin2.namespaces().setNamespaceReplicationClusters(replicatedNamespace, Sets.newHashSet(cluster2), true);
}
- admin1.namespaces().deleteNamespace(replicatedNamespace, true);
- admin1.namespaces().deleteNamespace(nonReplicatedNamespace, true);
+ // When using global ZK, reducing replication clusters triggers async topic cleanup on removed clusters.
+ // Retry namespace deletion to handle topics that may be in a transitional state.
+ Awaitility.await().atMost(Duration.ofSeconds(30)).ignoreExceptions().untilAsserted(() -> {
+ admin1.namespaces().deleteNamespace(replicatedNamespace, true);
+ });
+ Awaitility.await().atMost(Duration.ofSeconds(30)).ignoreExceptions().untilAsserted(() -> {
+ admin1.namespaces().deleteNamespace(nonReplicatedNamespace, true);
+ });
if (!usingGlobalZK) {
admin2.namespaces().deleteNamespace(replicatedNamespace, true);
admin2.namespaces().deleteNamespace(nonReplicatedNamespace, true);