jolshan commented on code in PR #14629:
URL: https://github.com/apache/kafka/pull/14629#discussion_r1372124366


##########
core/src/main/scala/kafka/server/ReplicaManager.scala:
##########
@@ -846,7 +759,8 @@ class ReplicaManager(val config: KafkaConfig,
           producerId = batchInfo.producerId,
           producerEpoch = batchInfo.producerEpoch,
           topicPartitions = notYetVerifiedEntriesPerPartition.keySet.toSeq,
-          callback = 
KafkaRequestHandler.wrap(appendEntries(entriesPerPartition)(_))
+          callback = 
KafkaRequestHandler.wrap(appendEntries(entriesPerPartition, 
internalTopicsAllowed, origin, requiredAcks, verificationGuards.toMap,

Review Comment:
   I'm not sure exactly how this would work. I suppose we could have a flag 
"verified" in some sort of context, but where is that context stored? 
   
   Right now the request considers that some partitions are verified and some 
are not. (I'm not sure the producer actually sends more than one partition), 
but the code is currently generalizable to handle multiple partitions. If this 
is the case the context needs to store which partitions are verified and which 
are not. 
   
   I agree that this is complicated, but I would need some time to think about 
how this would work. I'm also not sure the implications of going through the 
.handle of the request path -- it would be as if we received another request in 
the metrics etc.



-- 
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.

To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org

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

Reply via email to