----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/24676/ -----------------------------------------------------------
Review request for kafka. Bugs: KAFKA-1583 https://issues.apache.org/jira/browse/KAFKA-1583 Repository: kafka Description ------- Uploaded this WIP patch just for demonstrating the API design of the layered architecture. 1) all class names are kept just for easy reviewing; 2) delayed requests have a callback that is passed by the kafka-APIs, and the replica manager / other managers are responsible for getting the necessary data for passing into the callback; 3) The logic of append/fetch messages has been moved completedly out of kafka APIs. After doing these changes I think it is actually not that bad in terms of code cleanness, but would like some feedbacks before I move further Diffs ----- core/src/main/scala/kafka/api/ProducerResponse.scala a286272c834b6f40164999ff8b7f8998875f2cfe core/src/main/scala/kafka/log/Log.scala 0ddf97bd30311b6039e19abade41d2fbbad2f59b core/src/main/scala/kafka/server/DelayedFetch.scala e0f14e25af03e6d4344386dcabc1457ee784d345 core/src/main/scala/kafka/server/DelayedProduce.scala 9481508fc2d6140b36829840c337e557f3d090da core/src/main/scala/kafka/server/KafkaApis.scala bb94673c8f3079a4053e0a7d58689e69775cdf8b 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 Diff: https://reviews.apache.org/r/24676/diff/ Testing ------- Thanks, Guozhang Wang