This is an automated email from the ASF dual-hosted git repository.
technoboy 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 3160b76fb62 [fix][test] fix flaky testSplitBundleAdminApi (#21019)
3160b76fb62 is described below
commit 3160b76fb6223012b366bdfe81d0ad7e25000cf1
Author: Heesung Sohn <[email protected]>
AuthorDate: Fri Aug 18 06:26:52 2023 -0700
[fix][test] fix flaky testSplitBundleAdminApi (#21019)
---
.../loadbalance/ExtensibleLoadManagerTest.java | 24 ++++++++++++++--------
1 file changed, 15 insertions(+), 9 deletions(-)
diff --git
a/tests/integration/src/test/java/org/apache/pulsar/tests/integration/loadbalance/ExtensibleLoadManagerTest.java
b/tests/integration/src/test/java/org/apache/pulsar/tests/integration/loadbalance/ExtensibleLoadManagerTest.java
index 057039edc3b..9f6c5e58a21 100644
---
a/tests/integration/src/test/java/org/apache/pulsar/tests/integration/loadbalance/ExtensibleLoadManagerTest.java
+++
b/tests/integration/src/test/java/org/apache/pulsar/tests/integration/loadbalance/ExtensibleLoadManagerTest.java
@@ -38,6 +38,7 @@ import java.util.UUID;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.Executors;
+import java.util.concurrent.TimeUnit;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import lombok.extern.slf4j.Slf4j;
@@ -53,6 +54,7 @@ import org.apache.pulsar.tests.TestRetrySupport;
import org.apache.pulsar.tests.integration.containers.BrokerContainer;
import org.apache.pulsar.tests.integration.topologies.PulsarCluster;
import org.apache.pulsar.tests.integration.topologies.PulsarClusterSpec;
+import org.awaitility.Awaitility;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
@@ -207,17 +209,21 @@ public class ExtensibleLoadManagerTest extends
TestRetrySupport {
var bundleRanges =
bundles.getBoundaries().stream().map(Long::decode).sorted().toList();
String firstBundle = bundleRanges.get(0) + "_" + bundleRanges.get(1);
admin.namespaces().splitNamespaceBundle(DEFAULT_NAMESPACE,
firstBundle, true, null);
- BundlesData bundlesData =
admin.namespaces().getBundles(DEFAULT_NAMESPACE);
-
long mid = bundleRanges.get(0) + (bundleRanges.get(1) -
bundleRanges.get(0)) / 2;
+ Awaitility.waitAtMost(10, TimeUnit.SECONDS).pollDelay(100,
TimeUnit.MILLISECONDS)
+ .untilAsserted(
+ () -> {
+ BundlesData bundlesData =
admin.namespaces().getBundles(DEFAULT_NAMESPACE);
+ assertEquals(bundlesData.getNumBundles(), numBundles + 1);
+ String lowBundle = String.format("0x%08x",
bundleRanges.get(0));
+ String midBundle = String.format("0x%08x", mid);
+ String highBundle = String.format("0x%08x",
bundleRanges.get(1));
+
assertTrue(bundlesData.getBoundaries().contains(lowBundle));
+
assertTrue(bundlesData.getBoundaries().contains(midBundle));
+
assertTrue(bundlesData.getBoundaries().contains(highBundle));
+ }
+ );
- assertEquals(bundlesData.getNumBundles(), numBundles + 1);
- String lowBundle = String.format("0x%08x", bundleRanges.get(0));
- String midBundle = String.format("0x%08x", mid);
- String highBundle = String.format("0x%08x", bundleRanges.get(1));
- assertTrue(bundlesData.getBoundaries().contains(lowBundle));
- assertTrue(bundlesData.getBoundaries().contains(midBundle));
- assertTrue(bundlesData.getBoundaries().contains(highBundle));
// Test split bundle with invalid bundle range.
try {