MarvinCai commented on a change in pull request #10326:
URL: https://github.com/apache/pulsar/pull/10326#discussion_r620142722



##########
File path: 
managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java
##########
@@ -2156,6 +2157,14 @@ private void 
scheduleDeferredTrimming(CompletableFuture<?> promise) {
         scheduledExecutor.schedule(safeRun(() -> 
trimConsumedLedgersInBackground(promise)), 100, TimeUnit.MILLISECONDS);

Review comment:
       are we still using this method? if not can just remove it.

##########
File path: 
managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java
##########
@@ -2316,10 +2329,10 @@ void internalTrimConsumedLedgers(CompletableFuture<?> 
promise) {
                     log.debug("[{}] Ledger {} skipped for deletion as it is 
currently being written to", name,
                             ls.getLedgerId());
                     break;
-                } else if (expired) {
+                } else if (expired || isTruncate) {
                     log.debug("[{}] Ledger {} has expired, ts {}", name, 
ls.getLedgerId(), ls.getTimestamp());

Review comment:
       +1 please update log info.

##########
File path: 
managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java
##########
@@ -3738,6 +3751,35 @@ public void setEntriesAddedCounter(long count) {
 
     private static final Logger log = 
LoggerFactory.getLogger(ManagedLedgerImpl.class);
 
+    @Override
+    public CompletableFuture<Void> asyncTruncate() {
+
+        final List<CompletableFuture<Void>> futures = Lists.newArrayList();
+        for (ManagedCursor cursor : cursors) {
+            final CompletableFuture<Void> future = new CompletableFuture<>();
+            cursor.asyncClearBacklog(new AsyncCallbacks.ClearBacklogCallback() 
{

Review comment:
       The original request is delete retained message, retained message is 
acknowledged message, message in backlog is unacknowledged message.
    There are dedicated command to clear whole backlog or expire certain 
messages in backlog, for this command we should just delete retained message so 
we shouldn't clear backlog here.




-- 
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.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to