Skip to content

Commit b936f46

Browse files
zjxxzjwangzjxxzjwang
andauthored
[improve][broker] Optimize message expiration rate repeated update issues (apache#24073)
Co-authored-by: zjxxzjwang <zjxxzjwang@tencent.com>
1 parent 27f8b55 commit b936f46

File tree

3 files changed

+2
-4
lines changed

3 files changed

+2
-4
lines changed

pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentMessageExpiryMonitor.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -170,11 +170,12 @@ public boolean expireMessages(Position messagePosition) {
170170
}
171171

172172

173-
public void updateRates() {
173+
private void updateRates() {
174174
msgExpired.calculateRate();
175175
}
176176

177177
public double getMessageExpiryRate() {
178+
updateRates();
178179
return msgExpired.getRate();
179180
}
180181

@@ -190,7 +191,6 @@ public void markDeleteComplete(Object ctx) {
190191
long numMessagesExpired = (long) ctx - cursor.getNumberOfEntriesInBacklog(false);
191192
msgExpired.recordMultipleEvents(numMessagesExpired, 0 /* no value stats */);
192193
totalMsgExpired.add(numMessagesExpired);
193-
updateRates();
194194
// If the subscription is a Key_Shared subscription, we should to trigger message dispatch.
195195
if (subscription != null && subscription.getType() == SubType.Key_Shared) {
196196
subscription.getDispatcher().markDeletePositionMoveForward();

pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentReplicator.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -639,7 +639,6 @@ public void deleteFailed(ManagedLedgerException exception, Object ctx) {
639639
public void updateRates() {
640640
msgOut.calculateRate();
641641
msgExpired.calculateRate();
642-
expiryMonitor.updateRates();
643642

644643
stats.msgRateOut = msgOut.getRate();
645644
stats.msgThroughputOut = msgOut.getValueRate();

pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentTopic.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2457,7 +2457,6 @@ public void updateRates(NamespaceStats nsStats, NamespaceBundleStats bundleStats
24572457
// Populate subscription specific stats here
24582458
topicStatsStream.writePair("msgBacklog",
24592459
subscription.getNumberOfEntriesInBacklog(true));
2460-
subscription.getExpiryMonitor().updateRates();
24612460
topicStatsStream.writePair("msgRateExpired", subscription.getExpiredMessageRate());
24622461
topicStatsStream.writePair("msgRateOut", subMsgRateOut);
24632462
topicStatsStream.writePair("messageAckRate", subMsgAckRate);

0 commit comments

Comments
 (0)