kirktrue opened a new pull request, #20324: URL: https://github.com/apache/kafka/pull/20324
Introduces `SharedConsumerState` which shares state between the application thread and the network thread, allowing `AsyncKafkaConsumer` to potentially avoid expensive operations. The impetus for this change is the observation of these two points: 1. Submitting and waiting on events in `updateFetchPositions()` is a CPU bottleneck 2. In testing, data shows that 99.999995% of the time that `OffsetsRequestManager.updateFetchPositions()` is called, the partitions are up-to-date and there is no need to fetch offsets. This patch allows the check for stable partitions to be made in the application thread, resulting in generating and waiting on far fewer events in the critical path of `Consumer.poll()`. -- 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]
