This is an automated email from the ASF dual-hosted git repository. lhotari pushed a commit to branch branch-2.10 in repository https://gitbox.apache.org/repos/asf/pulsar.git
commit d847e1cde5b5aee85d6a3ae9fd5b2bb3fa6fd874 Author: Lari Hotari <[email protected]> AuthorDate: Thu Jun 2 16:53:07 2022 +0300 [Cli tools] Disable Pulsar client memory limit by default (#15748) - There's a regression with the tools since the memory limit cannot be adjusted - It's better to default to the previous setting of disabling memory limits so that the performance profile doesn't change because of the memory limit. (cherry picked from commit a6a7516aaf5a27ecfec083f0eb868e4ebbcbbef8) --- .../src/main/java/org/apache/pulsar/client/cli/PulsarClientTool.java | 4 +++- .../main/java/org/apache/pulsar/testclient/LoadSimulationClient.java | 2 ++ .../main/java/org/apache/pulsar/testclient/PerformanceConsumer.java | 2 ++ .../main/java/org/apache/pulsar/testclient/PerformanceProducer.java | 2 ++ .../main/java/org/apache/pulsar/testclient/PerformanceReader.java | 2 ++ .../java/org/apache/pulsar/testclient/PerformanceTransaction.java | 5 ++++- 6 files changed, 15 insertions(+), 2 deletions(-) diff --git a/pulsar-client-tools/src/main/java/org/apache/pulsar/client/cli/PulsarClientTool.java b/pulsar-client-tools/src/main/java/org/apache/pulsar/client/cli/PulsarClientTool.java index fe716941dbc..617ed6b5a7c 100644 --- a/pulsar-client-tools/src/main/java/org/apache/pulsar/client/cli/PulsarClientTool.java +++ b/pulsar-client-tools/src/main/java/org/apache/pulsar/client/cli/PulsarClientTool.java @@ -36,6 +36,7 @@ import org.apache.pulsar.client.api.ClientBuilder; import org.apache.pulsar.client.api.ProxyProtocol; import org.apache.pulsar.client.api.PulsarClient; import org.apache.pulsar.client.api.PulsarClientException.UnsupportedAuthenticationException; +import org.apache.pulsar.client.api.SizeUnit; @Parameters(commandDescription = "Produce or consume messages on a specified topic") public class PulsarClientTool { @@ -119,7 +120,8 @@ public class PulsarClientTool { } private void updateConfig() throws UnsupportedAuthenticationException { - ClientBuilder clientBuilder = PulsarClient.builder(); + ClientBuilder clientBuilder = PulsarClient.builder() + .memoryLimit(0, SizeUnit.BYTES); Authentication authentication = null; if (isNotBlank(this.authPluginClassName)) { authentication = AuthenticationFactory.create(authPluginClassName, authParams); diff --git a/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/LoadSimulationClient.java b/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/LoadSimulationClient.java index 34def55b9db..04f1be4e382 100644 --- a/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/LoadSimulationClient.java +++ b/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/LoadSimulationClient.java @@ -44,6 +44,7 @@ import org.apache.pulsar.client.api.MessageId; import org.apache.pulsar.client.api.MessageListener; import org.apache.pulsar.client.api.Producer; import org.apache.pulsar.client.api.PulsarClient; +import org.apache.pulsar.client.api.SizeUnit; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -317,6 +318,7 @@ public class LoadSimulationClient { .serviceHttpUrl(arguments.serviceURL) .build(); client = PulsarClient.builder() + .memoryLimit(0, SizeUnit.BYTES) .serviceUrl(arguments.serviceURL) .connectionsPerBroker(4) .ioThreads(Runtime.getRuntime().availableProcessors()) diff --git a/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceConsumer.java b/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceConsumer.java index 9d1920ac4f6..029f4ee8de5 100644 --- a/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceConsumer.java +++ b/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceConsumer.java @@ -51,6 +51,7 @@ import org.apache.pulsar.client.api.ConsumerBuilder; import org.apache.pulsar.client.api.MessageListener; import org.apache.pulsar.client.api.PulsarClient; import org.apache.pulsar.client.api.Schema; +import org.apache.pulsar.client.api.SizeUnit; import org.apache.pulsar.client.api.SubscriptionInitialPosition; import org.apache.pulsar.client.api.SubscriptionType; import org.apache.pulsar.client.api.transaction.Transaction; @@ -347,6 +348,7 @@ public class PerformanceConsumer { long testEndTime = startTime + (long) (arguments.testTime * 1e9); ClientBuilder clientBuilder = PulsarClient.builder() // + .memoryLimit(0, SizeUnit.BYTES) .enableTransaction(arguments.isEnableTransaction) .serviceUrl(arguments.serviceURL) // .connectionsPerBroker(arguments.maxConnections) // diff --git a/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceProducer.java b/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceProducer.java index f18f4a84e13..554d57972c9 100644 --- a/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceProducer.java +++ b/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceProducer.java @@ -68,6 +68,7 @@ import org.apache.pulsar.client.api.ProducerAccessMode; import org.apache.pulsar.client.api.ProducerBuilder; import org.apache.pulsar.client.api.PulsarClient; import org.apache.pulsar.client.api.PulsarClientException; +import org.apache.pulsar.client.api.SizeUnit; import org.apache.pulsar.client.api.TypedMessageBuilder; import org.apache.pulsar.client.api.transaction.Transaction; import org.apache.pulsar.common.partition.PartitionedTopicMetadata; @@ -572,6 +573,7 @@ public class PerformanceProducer { List<Future<Producer<byte[]>>> futures = new ArrayList<>(); ClientBuilder clientBuilder = PulsarClient.builder() // + .memoryLimit(0, SizeUnit.BYTES) .enableTransaction(arguments.isEnableTransaction)// .serviceUrl(arguments.serviceURL) // .connectionsPerBroker(arguments.maxConnections) // diff --git a/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceReader.java b/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceReader.java index dee3a6c57c1..31559536560 100644 --- a/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceReader.java +++ b/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceReader.java @@ -43,6 +43,7 @@ import org.apache.pulsar.client.api.PulsarClient; import org.apache.pulsar.client.api.Reader; import org.apache.pulsar.client.api.ReaderBuilder; import org.apache.pulsar.client.api.ReaderListener; +import org.apache.pulsar.client.api.SizeUnit; import org.apache.pulsar.client.impl.MessageIdImpl; import org.apache.pulsar.common.naming.TopicName; import org.apache.pulsar.common.util.FutureUtil; @@ -257,6 +258,7 @@ public class PerformanceReader { }; ClientBuilder clientBuilder = PulsarClient.builder() // + .memoryLimit(0, SizeUnit.BYTES) .serviceUrl(arguments.serviceURL) // .connectionsPerBroker(arguments.maxConnections) // .statsInterval(arguments.statsIntervalSeconds, TimeUnit.SECONDS) // diff --git a/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceTransaction.java b/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceTransaction.java index 31e566919ba..2410bd615af 100644 --- a/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceTransaction.java +++ b/pulsar-testclient/src/main/java/org/apache/pulsar/testclient/PerformanceTransaction.java @@ -62,6 +62,7 @@ import org.apache.pulsar.client.api.ProducerBuilder; import org.apache.pulsar.client.api.PulsarClient; import org.apache.pulsar.client.api.PulsarClientException; import org.apache.pulsar.client.api.Schema; +import org.apache.pulsar.client.api.SizeUnit; import org.apache.pulsar.client.api.SubscriptionInitialPosition; import org.apache.pulsar.client.api.SubscriptionType; import org.apache.pulsar.client.api.transaction.Transaction; @@ -295,7 +296,9 @@ public class PerformanceTransaction { } ClientBuilder clientBuilder = - PulsarClient.builder().enableTransaction(!arguments.isDisableTransaction) + PulsarClient.builder() + .memoryLimit(0, SizeUnit.BYTES) + .enableTransaction(!arguments.isDisableTransaction) .serviceUrl(arguments.serviceURL) .connectionsPerBroker(arguments.maxConnections) .statsInterval(0, TimeUnit.SECONDS)
