You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by lh...@apache.org on 2022/06/02 13:53:13 UTC
[pulsar] branch master updated: [Cli tools] Disable Pulsar client memory limit by default (#15748)
This is an automated email from the ASF dual-hosted git repository.
lhotari 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 a6a7516aaf5 [Cli tools] Disable Pulsar client memory limit by default (#15748)
a6a7516aaf5 is described below
commit a6a7516aaf5a27ecfec083f0eb868e4ebbcbbef8
Author: Lari Hotari <lh...@users.noreply.github.com>
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.
---
.../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 0b9b719bfa2..6b145ca288a 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;
@@ -356,6 +357,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 ea40aa31ae2..46155bd5eb4 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 724cb4378b3..1c99dce8c32 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 52af64d1bea..1258918b18a 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)