-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/24676/
-----------------------------------------------------------
(Updated Aug. 20, 2014, 9 p.m.)
Review request for kafka.
Bugs: KAFKA-1583
https://issues.apache.org/jira/browse/KAFKA-1583
Repository: kafka
Description (updated)
-------
Compilable WIP patch.
Changes include:
1. Remove Fetch/ProduceRequestPurgatory classes and move their checking
satisfaction logic into the delayedFetch/Produce.
2. The base RequestPurgatory's API change tryCompleteElseWatch and
checkAndComplete
3. The base DelayedRequest API change complete, expire, tryComplete (which will
call complete upon success) and isCompleted.
4. Move the updatingReplicaLEO function from ReplicaManager into Partition.
5. Move the appendMessageToLocalLog and readMessages from KafkaApis to
ReplicaManager.
6. OffsetManager still used a nested callback for putting offsets into cache
while interacting with ReplicaManager.
Would like reviews on
1. RequestPurgatory and DelayedRequest API and implementation.
2. DelayedFetch/Produce API and implementation.
3. ReplicaManager's readMessages/appendMessages API.
4. OffsetManager's storeOffsets API.
5. KafkaApis.
Diffs
-----
core/src/main/scala/kafka/api/FetchRequest.scala
51cdccf7f90eb530cc62b094ed822b8469d50b12
core/src/main/scala/kafka/api/FetchResponse.scala
af9308737bf7832eca018c2b3ede703f7d1209f1
core/src/main/scala/kafka/api/OffsetCommitRequest.scala
861a6cf11dc6b6431fcbbe9de00c74a122f204bd
core/src/main/scala/kafka/api/ProducerRequest.scala
b2366e7eedcac17f657271d5293ff0bef6f3cbe6
core/src/main/scala/kafka/api/ProducerResponse.scala
a286272c834b6f40164999ff8b7f8998875f2cfe
core/src/main/scala/kafka/cluster/Partition.scala
ff106b47e6ee194cea1cf589474fef975b9dd7e2
core/src/main/scala/kafka/common/ErrorMapping.scala
3fae7910e4ce17bc8325887a046f383e0c151d44
core/src/main/scala/kafka/log/Log.scala
0ddf97bd30311b6039e19abade41d2fbbad2f59b
core/src/main/scala/kafka/network/BoundedByteBufferSend.scala
a624359fb2059340bb8dc1619c5b5f226e26eb9b
core/src/main/scala/kafka/server/DelayedFetch.scala
e0f14e25af03e6d4344386dcabc1457ee784d345
core/src/main/scala/kafka/server/DelayedProduce.scala
9481508fc2d6140b36829840c337e557f3d090da
core/src/main/scala/kafka/server/FetchRequestPurgatory.scala
ed1318891253556cdf4d908033b704495acd5724
core/src/main/scala/kafka/server/KafkaApis.scala
c584b559416b3ee4bcbec5966be4891e0a03eefb
core/src/main/scala/kafka/server/OffsetManager.scala
43eb2a35bb54d32c66cdb94772df657b3a104d1a
core/src/main/scala/kafka/server/ProducerRequestPurgatory.scala
d4a7d4a79b44263a1f7e1a92874dd36aa06e5a3f
core/src/main/scala/kafka/server/ReplicaManager.scala
68758e35d496a4659819960ae8e809d6e215568e
core/src/main/scala/kafka/server/RequestPurgatory.scala
ce06d2c381348deef8559374869fcaed923da1d1
core/src/main/scala/kafka/utils/DelayedItem.scala
d7276494072f14f1cdf7d23f755ac32678c5675c
core/src/test/scala/unit/kafka/server/RequestPurgatoryTest.scala
168712de241125982d556c188c76514fceb93779
core/src/test/scala/unit/kafka/server/SimpleFetchTest.scala
09ed8f5a7a414ae139803bf82d336c2d80bf4ac5
Diff: https://reviews.apache.org/r/24676/diff/
Testing
-------
Thanks,
Guozhang Wang