You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by pe...@apache.org on 2026/10/21 23:19:38 UTC

(pulsar) branch master updated: [fix][test] Fix flaky OffloadPrefixTest.terminateTriggersAutomaticOffloadForLastLedger (#27040)

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

codelipenghui 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 31dd6f5fbcf4 [fix][test] Fix flaky OffloadPrefixTest.terminateTriggersAutomaticOffloadForLastLedger (#27040)
31dd6f5fbcf4 is described below

commit 31dd6f5fbcf49541cda56116768baf9bc088d220
Author: Lari Hotari <lh...@users.noreply.github.com>
AuthorDate: Thu Oct 22 02:19:31 2026 +0300

    [fix][test] Fix flaky OffloadPrefixTest.terminateTriggersAutomaticOffloadForLastLedger (#27040)
---
 .../java/org/apache/bookkeeper/mledger/impl/OffloadPrefixTest.java   | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/managed-ledger/src/test/java/org/apache/bookkeeper/mledger/impl/OffloadPrefixTest.java b/managed-ledger/src/test/java/org/apache/bookkeeper/mledger/impl/OffloadPrefixTest.java
index 55a9aa2356b2..e84f09717a13 100644
--- a/managed-ledger/src/test/java/org/apache/bookkeeper/mledger/impl/OffloadPrefixTest.java
+++ b/managed-ledger/src/test/java/org/apache/bookkeeper/mledger/impl/OffloadPrefixTest.java
@@ -1579,10 +1579,11 @@ public class OffloadPrefixTest extends MockedBookKeeperTestCase {
         Position lastPosition = ledger.terminate();
 
         assertEquals(lastPosition.getLedgerId(), lastLedgerId);
-        assertEventuallyTrue(() -> offloader.offloadedLedgers().equals(Set.of(lastLedgerId)));
+        Awaitility.await().untilAsserted(() -> assertEquals(offloader.offloadedLedgers(), Set.of(lastLedgerId)));
         assertTrue(ledger.isTerminated());
         assertEquals(ledger.getLedgersInfoAsList().size(), 1);
-        assertTrue(ledger.getLedgersInfoAsList().get(0).getOffloadContext().isComplete());
+        // the offloader completes before the ledger info is marked complete with an async metadata update
+        Awaitility.await().until(() -> ledger.getLedgersInfoAsList().get(0).getOffloadContext().isComplete());
     }