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 8c7c9788119 [fix][test] Fix flaky test
BrokerServiceAutoSubscriptionCreationTest (#22190)
8c7c9788119 is described below
commit 8c7c9788119197ac78bb90dfb030b1883139c026
Author: Jiwei Guo <[email protected]>
AuthorDate: Mon Mar 4 21:42:22 2024 +0800
[fix][test] Fix flaky test BrokerServiceAutoSubscriptionCreationTest
(#22190)
---
.../service/BrokerServiceAutoSubscriptionCreationTest.java | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git
a/pulsar-broker/src/test/java/org/apache/pulsar/broker/service/BrokerServiceAutoSubscriptionCreationTest.java
b/pulsar-broker/src/test/java/org/apache/pulsar/broker/service/BrokerServiceAutoSubscriptionCreationTest.java
index 3f2e182874e..f1128e389ca 100644
---
a/pulsar-broker/src/test/java/org/apache/pulsar/broker/service/BrokerServiceAutoSubscriptionCreationTest.java
+++
b/pulsar-broker/src/test/java/org/apache/pulsar/broker/service/BrokerServiceAutoSubscriptionCreationTest.java
@@ -28,6 +28,7 @@ import org.apache.pulsar.client.api.MessageId;
import org.apache.pulsar.client.api.PulsarClientException;
import org.apache.pulsar.common.naming.TopicName;
import org.apache.pulsar.common.policies.data.AutoSubscriptionCreationOverride;
+import org.awaitility.Awaitility;
import org.testng.Assert;
import org.testng.annotations.AfterClass;
import org.testng.annotations.AfterMethod;
@@ -159,15 +160,19 @@ public class BrokerServiceAutoSubscriptionCreationTest
extends BrokerTestBase {
throws PulsarAdminException, PulsarClientException {
pulsar.getConfiguration().setAllowAutoTopicCreation(false);
pulsar.getConfiguration().setAllowAutoSubscriptionCreation(true);
-
admin.brokers().updateDynamicConfiguration("allowAutoSubscriptionCreation",
"false");
+ String allowAutoSubscriptionCreation = "allowAutoSubscriptionCreation";
+
admin.brokers().updateDynamicConfiguration(allowAutoSubscriptionCreation,
"false");
String topicString = "persistent://prop/ns-abc/non-partitioned-topic"
+ UUID.randomUUID();
String subscriptionName = "non-partitioned-topic-sub";
admin.topics().createNonPartitionedTopic(topicString);
Assert.assertThrows(PulsarClientException.class,
()->
pulsarClient.newConsumer().topic(topicString).subscriptionName(subscriptionName).subscribe());
-
admin.brokers().updateDynamicConfiguration("allowAutoSubscriptionCreation",
"true");
-
pulsarClient.newConsumer().topic(topicString).subscriptionName(subscriptionName).subscribe();
-
assertTrue(admin.topics().getSubscriptions(topicString).contains(subscriptionName));
+
admin.brokers().updateDynamicConfiguration(allowAutoSubscriptionCreation,
"true");
+ Awaitility.await().untilAsserted(() -> {
+
Assert.assertEquals(admin.brokers().getAllDynamicConfigurations().get(allowAutoSubscriptionCreation),
"true");
+
pulsarClient.newConsumer().topic(topicString).subscriptionName(subscriptionName).subscribe();
+
assertTrue(admin.topics().getSubscriptions(topicString).contains(subscriptionName));
+ });
}
}