eolivelli commented on a change in pull request #9859:
URL: https://github.com/apache/pulsar/pull/9859#discussion_r598737700



##########
File path: 
pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceProducer.java
##########
@@ -325,6 +343,37 @@ public static void main(String[] args) throws Exception {
             printAggregatedStats();
         }));
 
+        if (arguments.createTopicPartitions > 0) {
+            PulsarAdminBuilder clientBuilder = PulsarAdmin.builder()
+                    .serviceHttpUrl(arguments.adminURL)
+                    .tlsTrustCertsFilePath(arguments.tlsTrustCertsFilePath);
+
+            if (isNotBlank(arguments.authPluginClassName)) {
+                clientBuilder.authentication(arguments.authPluginClassName, 
arguments.authParams);
+            }
+
+            if (arguments.tlsAllowInsecureConnection != null) {
+                
clientBuilder.allowTlsInsecureConnection(arguments.tlsAllowInsecureConnection);
+            }
+
+            try (PulsarAdmin client = clientBuilder.build();) {
+                for (String topic : arguments.topics) {
+                    log.info("Creating partitioned topic {} with {} 
partitions", topic, arguments.createTopicPartitions);
+                    try {
+                        client.topics().createPartitionedTopic(topic, 
arguments.createTopicPartitions);
+                    } catch (PulsarAdminException.ConflictException 
alreadyExists) {
+                        log.debug("Topic "+topic+" already exists: " + 
alreadyExists);
+                        PartitionedTopicMetadata partitionedTopicMetadata = 
client.topics().getPartitionedTopicMetadata(topic);
+                        if (partitionedTopicMetadata.partitions != 
arguments.createTopicPartitions) {
+                            log.error("Topic {} already exists but it has a 
wrong number of partitions: {}, expecting {}",
+                                    topic, 
partitionedTopicMetadata.partitions, arguments.createTopicPartitions);
+                            System.exit(-1);

Review comment:
       @sijie I finally ended up in adding support for not calling System.exit.
   I had to do so in order to allow tests to not crash the JVM




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to