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));
+        });
     }
 
 }

Reply via email to