-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/6516/
-----------------------------------------------------------
(Updated Aug. 10, 2012, 11:06 a.m.)
Review request for bookkeeper.
Description
-------
There are use cases for bookkeeper that may require submitting add requests to
a write set and returning upon receiving a confirmation from an ack set. The
ack set must be a subset of the write set. An important special case is writing
to all and returning upon hearing from a majority. Another important use case
is avoiding s slow disks by writing to f + s + 1 and returning upon receiving f
+ 1 responses.
Currently, the write set and the ack set are the same for a ledger. Internal
changes to support these cases include changes to LedgerHandle and
PendingAddOp. We also need to add a call to the client API to accept different
sizes for the write set and the ack set upon ledger creation.
It is also open for the discussion the need to implement a new distribution
schedule. So far it looks like we can reuse the round robin implementation we
currently have. We would need to implement a new one if, for example, the
initial bookie of an add operation must be always the same.
This addresses bug BOOKKEEPER-208.
https://issues.apache.org/jira/browse/BOOKKEEPER-208
Diffs
-----
bookkeeper-benchmark/src/main/java/org/apache/bookkeeper/benchmark/BenchThroughputLatency.java
b37de53
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/BookKeeper.java
505f900
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/BookKeeperAdmin.java
e4e5809
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/DistributionSchedule.java
833f501
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerCreateOp.java
26ebad4
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerHandle.java
c5ba6ac
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerMetadata.java
55dcbd8
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingAddOp.java
c9cd24d
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
a654640
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/RoundRobinDistributionSchedule.java
9c989d8
bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/DataFormats.java
b69ff1d
bookkeeper-server/src/main/proto/DataFormats.proto c861bde
bookkeeper-server/src/test/java/org/apache/bookkeeper/client/BookieRecoveryTest.java
79f0a0c
bookkeeper-server/src/test/java/org/apache/bookkeeper/client/RoundRobinDistributionScheduleTest.java
PRE-CREATION
bookkeeper-server/src/test/java/org/apache/bookkeeper/client/SlowBookieTest.java
PRE-CREATION
bookkeeper-server/src/test/java/org/apache/bookkeeper/client/TestReadTimeout.java
eed9905
bookkeeper-server/src/test/java/org/apache/bookkeeper/meta/GcLedgersTest.java
265dfc7
bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BookKeeperClusterTestCase.java
ddc920c
Diff: https://reviews.apache.org/r/6516/diff/
Testing
-------
Thanks,
Ivan Kelly