This is an automated email from the ASF dual-hosted git repository.
merlimat 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 f10be84a21c [fix][test] Fix flaky
ManagedLedgerTest.testInvalidateReadHandleWhenConsumed (#25595)
f10be84a21c is described below
commit f10be84a21cfb994029455136edf74cc54d6dde8
Author: Matteo Merli <[email protected]>
AuthorDate: Tue Apr 28 09:49:40 2026 -0700
[fix][test] Fix flaky
ManagedLedgerTest.testInvalidateReadHandleWhenConsumed (#25595)
---
.../java/org/apache/bookkeeper/mledger/impl/ManagedLedgerTest.java | 6 ++++++
1 file changed, 6 insertions(+)
diff --git
a/managed-ledger/src/test/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerTest.java
b/managed-ledger/src/test/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerTest.java
index 17185f2a331..7e756f1d994 100644
---
a/managed-ledger/src/test/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerTest.java
+++
b/managed-ledger/src/test/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerTest.java
@@ -4023,6 +4023,12 @@ public class ManagedLedgerTest extends
MockedBookKeeperTestCase {
ledger.addEntry(String.valueOf(i).getBytes(Encoding));
}
+ // Wait for all ledger rolls to complete before reading. With
maxEntriesPerLedger=1 and 3 entries,
+ // we expect 4 ledgers (3 closed + 1 current empty). If we read before
the last roll completes,
+ // the last entry is read from currentLedger directly (not via
ledgerCache), causing ledgerCache
+ // to have fewer entries than expected.
+ Awaitility.await().untilAsserted(() ->
assertEquals(ledger.ledgers.size(), 4));
+
// clear the cache to avoid flakiness
factory.getEntryCacheManager().clear();