From 0c2dd9674d9ec104682cbf8cc2566591c700d548 Mon Sep 17 00:00:00 2001 From: Yike Xiao Date: Mon, 2 Feb 2026 23:25:01 +0800 Subject: [PATCH] Change log level from warn to debug when cursor mark-deleted position ledger doesn't exist It's possible that the ledger at the mark-deleted position is empty and has been deleted already. This is not an error condition, so it should be logged at debug level instead of warn level to reduce noise in production logs. Fixes #20408 --- .../org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java b/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java index 6dd886fe4ea2b..e7edd3827882c 100644 --- a/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java +++ b/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java @@ -2736,7 +2736,8 @@ public CompletableFuture maybeUpdateCursorBeforeTrimmingConsumedLedger() { log.debug("No need to reset cursor: {}, current ledger is the last ledger.", cursor); } } else { - log.warn("Cursor: {} does not exist in the managed-ledger.", cursor); + // It's possible that the ledger at the mark-deleted position is empty and has been deleted already. + log.debug("Cursor: {} mark-deleted position ledger does not exist in the managed-ledger.", cursor); } int compareResult = lastAckedPosition.compareTo(markDeletedPosition);