zookeeper-bookkeeper-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sijie Guo" <guosi...@gmail.com>
Subject Re: Review Request: BOOKKEEPER-112: Bookie Recovery on an open ledger will cause LedgerHandle#close on that ledger to fail
Date Fri, 23 Mar 2012 15:30:15 GMT

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/3472/
-----------------------------------------------------------

(Updated 2012-03-23 15:30:15.796027)


Review request for bookkeeper.


Changes
-------

modify the patch according to the document.


Summary
-------

Bookie recovery updates the ledger metadata in zookeeper. LedgerHandle will not get notified
of this update, so it will try to write out its own ledger metadata, only to fail with KeeperException.BadVersion.
This effectively fences all write operations on the LedgerHandle (close and addEntry). close
will fail for obvious reasons. addEntry will fail once it gets to the failed bookie in the
schedule, tries to write, fails, selects a new bookie and tries to update ledger metadata.

Update Line 605, testSyncBookieRecoveryToRandomBookiesCheckForDupes(), when done
Also, uncomment addEntry in TestFencing#testFencingInteractionWithBookieRecovery()


This addresses bug BOOKKEEPER-112.
    https://issues.apache.org/jira/browse/BOOKKEEPER-112


Diffs (updated)
-----

  bookkeeper-server/src/main/java/org/apache/bookkeeper/client/BookKeeperAdmin.java 37623dc

  bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerHandle.java f71e53f 
  bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerMetadata.java b403aa1

  bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerRecoveryOp.java c67a79c

  bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java 539d6b2

  bookkeeper-server/src/test/java/org/apache/bookkeeper/client/BookieRecoveryTest.java b8923e8

  bookkeeper-server/src/test/java/org/apache/bookkeeper/client/TestFencing.java 7de1c10 
  bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BookKeeperClusterTestCase.java
0b882c6 
  bookkeeper-server/src/test/java/org/apache/bookkeeper/test/CloseTest.java e28d32c 

Diff: https://reviews.apache.org/r/3472/diff


Testing
-------


Thanks,

Sijie


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message