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

daojun 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 73fd61db646 [improve][offload] Allow to disable the 
managedLedgerOffloadDeletionLagInMillis (#22689)
73fd61db646 is described below

commit 73fd61db646da44d51347e3dcc194ea23b64b4ff
Author: Yong Zhang <[email protected]>
AuthorDate: Thu May 16 20:54:32 2024 +0800

    [improve][offload] Allow to disable the 
managedLedgerOffloadDeletionLagInMillis (#22689)
---
 .../java/org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java    | 3 ++-
 .../org/apache/bookkeeper/mledger/impl/OffloadLedgerDeleteTest.java   | 4 ++++
 2 files changed, 6 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 ab32806fbae..b3426692df3 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
@@ -2578,6 +2578,7 @@ public class ManagedLedgerImpl implements ManagedLedger, 
CreateCallback {
         long elapsedMs = clock.millis() - offload.getTimestamp();
         return offloadPolicies.filter(policies -> offload.getComplete() && 
!offload.getBookkeeperDeleted()
                 && policies.getManagedLedgerOffloadDeletionLagInMillis() != 
null
+                && policies.getManagedLedgerOffloadDeletionLagInMillis() >= 0
                 && elapsedMs > 
policies.getManagedLedgerOffloadDeletionLagInMillis()).isPresent();
     }
 
@@ -4559,4 +4560,4 @@ public class ManagedLedgerImpl implements ManagedLedger, 
CreateCallback {
         }
         return theSlowestNonDurableReadPosition;
     }
-}
\ No newline at end of file
+}
diff --git 
a/managed-ledger/src/test/java/org/apache/bookkeeper/mledger/impl/OffloadLedgerDeleteTest.java
 
b/managed-ledger/src/test/java/org/apache/bookkeeper/mledger/impl/OffloadLedgerDeleteTest.java
index 56da315553e..b46f06106cf 100644
--- 
a/managed-ledger/src/test/java/org/apache/bookkeeper/mledger/impl/OffloadLedgerDeleteTest.java
+++ 
b/managed-ledger/src/test/java/org/apache/bookkeeper/mledger/impl/OffloadLedgerDeleteTest.java
@@ -383,6 +383,10 @@ public class OffloadLedgerDeleteTest extends 
MockedBookKeeperTestCase {
         needsDelete = managedLedger.isOffloadedNeedsDelete(offloadContext, 
Optional.of(offloadPolicies));
         Assert.assertTrue(needsDelete);
 
+        offloadPolicies.setManagedLedgerOffloadDeletionLagInMillis(-1L);
+        needsDelete = managedLedger.isOffloadedNeedsDelete(offloadContext, 
Optional.of(offloadPolicies));
+        Assert.assertFalse(needsDelete);
+
         offloadPolicies.setManagedLedgerOffloadDeletionLagInMillis(1000L * 2);
         needsDelete = managedLedger.isOffloadedNeedsDelete(offloadContext, 
Optional.of(offloadPolicies));
         Assert.assertFalse(needsDelete);

Reply via email to