[ https://issues.apache.org/jira/browse/KAFKA-14274?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kirk True updated KAFKA-14274: ------------------------------ Labels: consumer-threading-refactor (was: consumer-threading-refactor kip-945) > Introduce FetchRequestManager to integrate fetch into new consumer threading > refactor > ------------------------------------------------------------------------------------- > > Key: KAFKA-14274 > URL: https://issues.apache.org/jira/browse/KAFKA-14274 > Project: Kafka > Issue Type: Task > Components: clients, consumer > Reporter: Philip Nee > Assignee: Kirk True > Priority: Major > Labels: consumer-threading-refactor > > The {{Fetcher}} class is used internally by the {{KafkaConsumer}} to fetch > records from the brokers. There is ongoing work to create a new consumer > implementation with a significantly refactored threading model. The threading > refactor work requires a similarly refactored {{{}Fetcher{}}}. > This task is to introduce a new class named {{FetchRequestManager}} that will > be responsible for: > # Formatting fetch requests to the background thread > # Configuring the callback on fetch responses for the background thread > The response handler will collect the fetch responses from the broker and > create {{{}CompletedFetch{}}}, instances, much as is done in {{{}Fetcher{}}}. > The newly introduced {{FetchUtils}} will be used for both > {{FetchRequestManager}} and {{Fetcher}} to keep the logic as reusable as > possible. > The foreground logic will decompress the data into a {{{}Record{}}}, which > will then be deserialized into a {{ConsumerRecord}} for returning to the user. -- This message was sent by Atlassian Jira (v8.20.10#820010)