[
https://issues.apache.org/jira/browse/KAFKA-2129?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tim Brooks updated KAFKA-2129:
------------------------------
Assignee: Tim Brooks
Status: Patch Available (was: Open)
> Consumer could make multiple concurrent metadata requests
> ---------------------------------------------------------
>
> Key: KAFKA-2129
> URL: https://issues.apache.org/jira/browse/KAFKA-2129
> Project: Kafka
> Issue Type: Bug
> Components: clients
> Reporter: Tim Brooks
> Assignee: Tim Brooks
> Priority: Minor
> Attachments: KAFKA-2129.patch
>
>
> The NetworkClient's metadataFetchInProgress is neither volatile nor atomic.
> This protects against multiple metadata requests being made and is read on
> poll() on the NetworkClient. It is written to when a request is initiated.
> This is fine for the producer. Which seems to have one thread writing. The
> KafkaConsumer's poll() method is synchronized, so there will not be more
> than one writer entering from there. However, the NetworkClient's poll()
> method is also accessed on the Consumer's partitionsFor() method. Which could
> be access by a separate thread.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)