[ 
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)

Reply via email to