Pomelongan commented on code in PR #17816:
URL: https://github.com/apache/pulsar/pull/17816#discussion_r979527238
##########
pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentMessageExpiryMonitor.java:
##########
@@ -192,6 +192,7 @@ public void findEntryFailed(ManagedLedgerException
exception, Optional<Position>
log.warn("[{}][{}] read failed from ledger at position:{} : {}",
topicName, subName, failedReadPosition,
exception.getMessage());
findEntryComplete(failedReadPosition.get(), ctx);
+ return;
Review Comment:
Thanks for reviewing~
The `findEntryComplete` method will change the `expirationCheckInProgress`
to FALSE. see line182
https://github.com/apache/pulsar/blob/49eaa548b97eca06a6aff5d79391d49f085adb9e/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentMessageExpiryMonitor.java#L168-L182
If return is not added, the `updateRates` method will execute repeatedly.
see 👆line180 ,and see 👇line 1846 1856 1902 1911 1921
https://github.com/apache/pulsar/blob/49eaa548b97eca06a6aff5d79391d49f085adb9e/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedCursorImpl.java#L1840-L1925
and the implementation of `MarkDeleteCallback` is as follows,see line 150 163
https://github.com/apache/pulsar/blob/49eaa548b97eca06a6aff5d79391d49f085adb9e/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentMessageExpiryMonitor.java#L144-L165
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]