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 <[email protected]> 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);
