This is an automated email from the ASF dual-hosted git repository.

penghui 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 63731801caf [improve][broker] Avoid object create in 
`RedeliveryTracker.getRedeliveryCount` (#18352)
63731801caf is described below

commit 63731801caf5ccf88dce7bc99dee95c8df2762d8
Author: WJL3333 <[email protected]>
AuthorDate: Fri Nov 11 18:37:09 2022 +0800

    [improve][broker] Avoid object create in 
`RedeliveryTracker.getRedeliveryCount` (#18352)
---
 .../org/apache/pulsar/broker/service/InMemoryRedeliveryTracker.java  | 5 ++---
 .../org/apache/pulsar/broker/service/PulsarCommandSenderImpl.java    | 3 +--
 .../java/org/apache/pulsar/broker/service/RedeliveryTracker.java     | 2 +-
 .../org/apache/pulsar/broker/service/RedeliveryTrackerDisabled.java  | 2 +-
 4 files changed, 5 insertions(+), 7 deletions(-)

diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/InMemoryRedeliveryTracker.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/InMemoryRedeliveryTracker.java
index f70d3a009a9..df999ab139d 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/InMemoryRedeliveryTracker.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/InMemoryRedeliveryTracker.java
@@ -38,9 +38,8 @@ public class InMemoryRedeliveryTracker implements 
RedeliveryTracker {
     }
 
     @Override
-    public int getRedeliveryCount(Position position) {
-        PositionImpl positionImpl = (PositionImpl) position;
-        LongPair count = trackerCache.get(positionImpl.getLedgerId(), 
positionImpl.getEntryId());
+    public int getRedeliveryCount(long ledgerId, long entryId) {
+        LongPair count = trackerCache.get(ledgerId, entryId);
         return (int) (count != null ? count.first : 0);
     }
 
diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/PulsarCommandSenderImpl.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/PulsarCommandSenderImpl.java
index 5ef5cc23261..84e23733cfd 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/PulsarCommandSenderImpl.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/PulsarCommandSenderImpl.java
@@ -26,7 +26,6 @@ import java.util.List;
 import java.util.Optional;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.bookkeeper.mledger.Entry;
-import org.apache.bookkeeper.mledger.impl.PositionImpl;
 import org.apache.pulsar.broker.intercept.BrokerInterceptor;
 import org.apache.pulsar.client.api.transaction.TxnID;
 import org.apache.pulsar.common.api.proto.BaseCommand;
@@ -271,7 +270,7 @@ public class PulsarCommandSenderImpl implements 
PulsarCommandSender {
                 }
 
                 int redeliveryCount = redeliveryTracker
-                        
.getRedeliveryCount(PositionImpl.get(entry.getLedgerId(), entry.getEntryId()));
+                        .getRedeliveryCount(entry.getLedgerId(), 
entry.getEntryId());
 
                 ctx.write(
                         cnx.newMessageAndIntercept(consumerId, 
entry.getLedgerId(), entry.getEntryId(), partitionIdx,
diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/RedeliveryTracker.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/RedeliveryTracker.java
index d6c9145a186..0c0287988bf 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/RedeliveryTracker.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/RedeliveryTracker.java
@@ -25,7 +25,7 @@ public interface RedeliveryTracker {
 
     int incrementAndGetRedeliveryCount(Position position);
 
-    int getRedeliveryCount(Position position);
+    int getRedeliveryCount(long ledgerId, long entryId);
 
     void remove(Position position);
 
diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/RedeliveryTrackerDisabled.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/RedeliveryTrackerDisabled.java
index e95f1b438ad..0903d76f9ed 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/RedeliveryTrackerDisabled.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/RedeliveryTrackerDisabled.java
@@ -33,7 +33,7 @@ public class RedeliveryTrackerDisabled implements 
RedeliveryTracker {
     }
 
     @Override
-    public int getRedeliveryCount(Position position) {
+    public int getRedeliveryCount(long ledgerId, long entryId) {
         return 0;
     }
 

Reply via email to