From dd3eca0fb93ca7a49d9eb25ab195effea737b9d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=93=B6=E5=A4=AA?= Date: Wed, 31 May 2023 11:55:21 +0800 Subject: [PATCH] [fix][client]Fix Duplicate generating RETRY topic. --- .../org/apache/pulsar/client/impl/ConsumerImpl.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConsumerImpl.java b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConsumerImpl.java index 199e8a9ae71b4..1438f65ec5ce5 100644 --- a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConsumerImpl.java +++ b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConsumerImpl.java @@ -346,17 +346,17 @@ protected ConsumerImpl(PulsarClientImpl client, String topic, ConsumerConfigurat } else { this.deadLetterPolicy = DeadLetterPolicy.builder() .maxRedeliverCount(conf.getDeadLetterPolicy().getMaxRedeliverCount()) - .deadLetterTopic(String.format("%s-%s" + RetryMessageUtil.DLQ_GROUP_TOPIC_SUFFIX, - topic, subscription)) + .deadLetterTopic(StringUtils.appendIfMissing(String.format("%s-%s", + topic, subscription), RetryMessageUtil.DLQ_GROUP_TOPIC_SUFFIX)) .build(); } if (StringUtils.isNotBlank(conf.getDeadLetterPolicy().getRetryLetterTopic())) { this.deadLetterPolicy.setRetryLetterTopic(conf.getDeadLetterPolicy().getRetryLetterTopic()); } else { - this.deadLetterPolicy.setRetryLetterTopic(String.format( - "%s-%s" + RetryMessageUtil.RETRY_GROUP_TOPIC_SUFFIX, - topic, subscription)); + this.deadLetterPolicy.setRetryLetterTopic(StringUtils.appendIfMissing( + String.format("%s-%s", topic, subscription), + RetryMessageUtil.RETRY_GROUP_TOPIC_SUFFIX)); } if (StringUtils.isNotBlank(conf.getDeadLetterPolicy().getInitialSubscriptionName())) {