This is an automated email from the ASF dual-hosted git repository.
merlimat 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 1953b9e0648 [fix][test] Drop lookup probe in
ExtensibleLoadManagerTest.startBroker to avoid channel-startup race (#25715)
1953b9e0648 is described below
commit 1953b9e06483450211f993ea13ab3df241a057f0
Author: Matteo Merli <[email protected]>
AuthorDate: Fri May 8 10:08:46 2026 -0700
[fix][test] Drop lookup probe in ExtensibleLoadManagerTest.startBroker to
avoid channel-startup race (#25715)
---
.../integration/loadbalance/ExtensibleLoadManagerTest.java | 11 ++++-------
1 file changed, 4 insertions(+), 7 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 fa0ba2ef9b1..95cb09fca1b 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
@@ -143,10 +143,13 @@ public class ExtensibleLoadManagerTest extends
TestRetrySupport {
brokerContainer.start();
}
});
- String topicName = "persistent://" + DEFAULT_NAMESPACE +
"/startBrokerCheck";
// Build admin clients once and reuse across poll iterations to avoid
the per-tick
// connection churn (3 brokers x N polls of admin builder/close).
Connection setup
// contends with brokers that are still warming up after a
stop/restart.
+ // We only check getActiveBrokers and intentionally avoid a topic
lookup probe: the broker
+ // accepts HTTP requests before ServiceUnitStateChannel reaches
Started, and a lookup in that
+ // window fails fast with "Invalid channel
state:LeaderElectionServiceStarted", which would
+ // make this poll loop spin without ever giving the channel time to
finish starting.
List<BrokerContainer> brokers = new
ArrayList<>(pulsarCluster.getBrokers());
List<PulsarAdmin> brokerAdmins = new ArrayList<>(brokers.size());
try {
@@ -167,12 +170,6 @@ public class ExtensibleLoadManagerTest extends
TestRetrySupport {
.log("Broker does not see active
brokers yet");
return false;
}
- try {
-
brokerAdmin.topics().createPartitionedTopic(topicName, 10);
- } catch
(PulsarAdminException.ConflictException e) {
- // expected - topic already exists
- }
-
brokerAdmin.lookups().lookupPartitionedTopic(topicName);
} catch (Exception e) {
log.warn()
.attr("broker",
brokerContainer.getHostName())