-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/3926/
-----------------------------------------------------------
(Updated 2012-03-12 14:21:17.503815)
Review request for bookkeeper.
Summary
-------
bookkeeper client treats NoSuchLedgerException as valid response when reading
last confirmed. If NoSuchLedgerException is caused due to an empty directory in
following cases, it is an incorrect response.
1) A disk is replaced or ledger index is removed by a sloppy admin.
2) A disk is not mounted when a bookie machine is restarted.
We need a mechanism to prevent such incorrect responses.
Ivan suggested to generate a instance key for each bookie and write it into the
ledger directories. If a directory doesn't have the key, and other directories
do, then it shouldn't start. This would also resolve the issue that someone
starting a new bookie with the same IP as a bookie which has previously died.
This addresses bug BOOKKEEPER-163.
https://issues.apache.org/jira/browse/BOOKKEEPER-163
Diffs (updated)
-----
bookkeeper-server/pom.xml 601104f
bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/Bookie.java
0d66b41
bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/BookieException.java
1a5b313
bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/Cookie.java
PRE-CREATION
bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/EntryLogger.java
82f01e8
bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/FileSystemUpgrade.java
d1427b7
bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/LedgerCache.java
19295bb
bookkeeper-server/src/test/java/org/apache/bookkeeper/bookie/BookieJournalTest.java
bc7a703
bookkeeper-server/src/test/java/org/apache/bookkeeper/bookie/BookieLayoutVersionTest.java
10f9538
bookkeeper-server/src/test/java/org/apache/bookkeeper/bookie/CompactionTest.java
016289d
bookkeeper-server/src/test/java/org/apache/bookkeeper/bookie/CookieTest.java
PRE-CREATION
bookkeeper-server/src/test/java/org/apache/bookkeeper/bookie/EntryLogTest.java
281f729
bookkeeper-server/src/test/java/org/apache/bookkeeper/bookie/UpgradeTest.java
eb08479
bookkeeper-server/src/test/java/org/apache/bookkeeper/client/BookieRecoveryTest.java
99258ac
bookkeeper-server/src/test/java/org/apache/bookkeeper/client/TestFencing.java
015e4e4
bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BaseTestCase.java
dada67a
bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BookieFailureTest.java
ea51118
bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BookieZKExpireTest.java
5ed7061
bookkeeper-server/src/test/java/org/apache/bookkeeper/test/ZooKeeperUtil.java
PRE-CREATION
Diff: https://reviews.apache.org/r/3926/diff
Testing
-------
Thanks,
Ivan