Skip to content

Commit

Permalink
Fixed updating partitioned topic without subscriptions (#7064)
Browse files Browse the repository at this point in the history
  • Loading branch information
merlimat committed May 28, 2020
1 parent afd3296 commit 55f7fd6
Showing 1 changed file with 26 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@
import org.apache.pulsar.broker.admin.AdminApiTest.MockedPulsarService;
import org.apache.pulsar.broker.auth.MockedPulsarServiceBaseTest;
import org.apache.pulsar.client.api.Consumer;
import org.apache.pulsar.client.api.Producer;
import org.apache.pulsar.client.api.Schema;
import org.apache.pulsar.common.naming.TopicName;
import org.apache.pulsar.common.policies.data.ClusterData;
import org.apache.pulsar.common.policies.data.TenantInfo;
Expand All @@ -33,6 +35,8 @@
import com.google.common.collect.Lists;
import com.google.common.collect.Sets;

import lombok.Cleanup;

public class IncrementPartitionsTest extends MockedPulsarServiceBaseTest {

private MockedPulsarService mockPulsarSetup;
Expand Down Expand Up @@ -97,4 +101,26 @@ public void testIncrementPartitionsOfTopic() throws Exception {

consumer.close();
}

@Test
public void testIncrementPartitionsWithNoSubscriptions() throws Exception {
final String partitionedTopicName = "persistent://prop-xyz/use/ns1/test-topic-" + System.nanoTime();

admin.topics().createPartitionedTopic(partitionedTopicName, 1);
assertEquals(admin.topics().getPartitionedTopicMetadata(partitionedTopicName).partitions, 1);

@Cleanup
Producer<String> consumer = pulsarClient.newProducer(Schema.STRING)
.topic(partitionedTopicName)
.create();

admin.topics().updatePartitionedTopic(partitionedTopicName, 2);
assertEquals(admin.topics().getPartitionedTopicMetadata(partitionedTopicName).partitions, 2);

admin.topics().updatePartitionedTopic(partitionedTopicName, 10);
assertEquals(admin.topics().getPartitionedTopicMetadata(partitionedTopicName).partitions, 10);

admin.topics().updatePartitionedTopic(partitionedTopicName, 20);
assertEquals(admin.topics().getPartitionedTopicMetadata(partitionedTopicName).partitions, 20);
}
}

0 comments on commit 55f7fd6

Please sign in to comment.