hachikuji commented on a change in pull request #9418:
URL: https://github.com/apache/kafka/pull/9418#discussion_r512189731



##########
File path: core/src/main/scala/kafka/raft/KafkaNetworkChannel.scala
##########
@@ -216,11 +216,9 @@ class KafkaNetworkChannel(time: Time,
     endpoints.put(id, node)
   }
 
-  def postInboundRequest(header: RequestHeader,
-                         request: AbstractRequest,
-                         onResponseReceived: ResponseHandler): Unit = {
+  def postInboundRequest(request: AbstractRequest, onResponseReceived: 
ResponseHandler): Unit = {

Review comment:
       > Unrelated with this change but when reading the code. I was confused 
by the name pollInboundResponses. That function returns both pending request 
and responses.
   
   I don't think that's right. It only delivers responses for outbound requests 
(in other words, inbound responses).
   
   In regard to the confusion, I took an unconventional turn in the beginning 
by consolidating inbound and outbound requests through a single API. This was 
useful because it allowed inputs and outputs to be serialized, which made it 
easier to have deterministic simulation tests. The main defect from the 
perspective of Raft is that fetch requests cannot be handled concurrently. I 
think we are going to have to address this problem in the long term, but it is 
outside the scope of this PR.
   




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to