From 30bb1a28025ad6473cb2c32ecdea5f545f5e9bf7 Mon Sep 17 00:00:00 2001 From: lamber-ken Date: Wed, 20 May 2020 18:13:41 +0800 Subject: [PATCH] [BUG] Fix flaky testLedgerOpenAfterBKCrashed --- .../apache/bookkeeper/test/BookieFailureTest.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BookieFailureTest.java b/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BookieFailureTest.java index c60a2dbd645..7b1f6e04c94 100644 --- a/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BookieFailureTest.java +++ b/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BookieFailureTest.java @@ -320,8 +320,20 @@ public void testLedgerOpenAfterBKCrashed() throws Exception { // try to open ledger with recovery LedgerHandle afterlh = bkc.openLedger(beforelh.getId(), digestType, "".getBytes()); - assertEquals(beforelh.getLastAddPushed(), afterlh.getLastAddConfirmed()); + + // try to open ledger no recovery + // bookies: 4, ensSize: 3, ackQuorumSize: 2 + LedgerHandle beforelhWithNoRecovery = bkc.createLedger(numBookies - 1 , 2, digestType, "".getBytes()); + for (int i = 0; i < numEntries; i++) { + beforelhWithNoRecovery.addEntry(tmp.getBytes()); + } + + // shutdown first bookie server + killBookie(0); + + // try to open ledger no recovery, should be able to open ledger + bkc.openLedger(beforelhWithNoRecovery.getId(), digestType, "".getBytes()); } /**