You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by pe...@apache.org on 2021/06/26 14:39:39 UTC
[pulsar] 02/04: MINOR: Add error message to
setMaxPendingMessagesAcrossPartitions (#10709)
This is an automated email from the ASF dual-hosted git repository.
penghui pushed a commit to branch branch-2.7
in repository https://gitbox.apache.org/repos/asf/pulsar.git
commit e37e0df5a1f865ce5dbe5da05c183f6d9ac15c62
Author: wenbingshen <ol...@gmail.com>
AuthorDate: Thu May 27 09:24:07 2021 +0800
MINOR: Add error message to setMaxPendingMessagesAcrossPartitions (#10709)
### Motivation
When maxPendingMessagesAcrossPartitions is less than maxPendingMessages, an error message will be thrown: null
### Modifications
return "maxPendingMessagesAcrossPartitions needs to be >= maxPendingMessages" instead
(cherry picked from commit 2cfed8cd62655c79828ebebb81d20736c6fc2fa4)
---
.../apache/pulsar/client/impl/conf/ProducerConfigurationData.java | 3 ++-
.../java/org/apache/pulsar/client/impl/ProducerBuilderImplTest.java | 5 +++++
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/conf/ProducerConfigurationData.java b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/conf/ProducerConfigurationData.java
index c48598a..3100952 100644
--- a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/conf/ProducerConfigurationData.java
+++ b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/conf/ProducerConfigurationData.java
@@ -133,7 +133,8 @@ public class ProducerConfigurationData implements Serializable, Cloneable {
}
public void setMaxPendingMessagesAcrossPartitions(int maxPendingMessagesAcrossPartitions) {
- checkArgument(maxPendingMessagesAcrossPartitions >= maxPendingMessages);
+ checkArgument(maxPendingMessagesAcrossPartitions >= maxPendingMessages,
+ "maxPendingMessagesAcrossPartitions needs to be >= maxPendingMessages");
this.maxPendingMessagesAcrossPartitions = maxPendingMessagesAcrossPartitions;
}
diff --git a/pulsar-client/src/test/java/org/apache/pulsar/client/impl/ProducerBuilderImplTest.java b/pulsar-client/src/test/java/org/apache/pulsar/client/impl/ProducerBuilderImplTest.java
index b3cda2e..18945cc 100644
--- a/pulsar-client/src/test/java/org/apache/pulsar/client/impl/ProducerBuilderImplTest.java
+++ b/pulsar-client/src/test/java/org/apache/pulsar/client/impl/ProducerBuilderImplTest.java
@@ -343,6 +343,11 @@ public class ProducerBuilderImplTest {
producerBuilderImpl.maxPendingMessagesAcrossPartitions(999);
}
+ @Test(expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = "maxPendingMessagesAcrossPartitions needs to be >= maxPendingMessages")
+ public void testProducerBuilderImplWhenMaxPendingMessagesAcrossPartitionsPropertyIsInvalidErrorMessages() {
+ producerBuilderImpl.maxPendingMessagesAcrossPartitions(999);
+ }
+
@Test
public void testProducerBuilderImplWhenNumericPropertiesAreValid() {
producerBuilderImpl.batchingMaxPublishDelay(1, TimeUnit.SECONDS);