kamalcph commented on code in PR #20706:
URL: https://github.com/apache/kafka/pull/20706#discussion_r2434544374
##########
core/src/main/scala/kafka/server/ReplicaManager.scala:
##########
@@ -1636,7 +1636,7 @@ class ReplicaManager(val config: KafkaConfig,
/**
* Process all remote fetches by creating async read tasks and handling them
in DelayedRemoteFetch collectively.
*/
- private def processRemoteFetches(remoteFetchInfos:
util.HashMap[TopicIdPartition, RemoteStorageFetchInfo],
+ private def processRemoteFetches(remoteFetchInfos:
util.LinkedHashMap[TopicIdPartition, RemoteStorageFetchInfo],
Review Comment:
1. Processing the partitions in the same order as client sent might address
starvation issues if any.
2. Also, if we want to introduce a dynamic broker config to switch between
single vs multi fetch to reduce the remote calls (when prefetch is not enabled
and topic message-size is higher than the consumer
`max.partition.fetch.bytes`), then the partitions need to be processed in the
same order.
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]