[ 
https://issues.apache.org/jira/browse/KAFKA-9882?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17088908#comment-17088908
 ] 

Jesse Anderson commented on KAFKA-9882:
---------------------------------------

subscribe() doesn't get a partition assignment until poll() is called. I 
double-checked this just now.

Using this method would lead to quite a bit of complicated code. The listener 
code would have to maintain a boolean to check if this is the first time theĀ 
onPartitionsAssigned method was called. It would have to flip the first time it 
was called.

I think a more straightforward approach to getting partition assignments would 
result in more readable and less buggy code.

> Add Block getAssignments()
> --------------------------
>
>                 Key: KAFKA-9882
>                 URL: https://issues.apache.org/jira/browse/KAFKA-9882
>             Project: Kafka
>          Issue Type: New Feature
>          Components: clients
>    Affects Versions: 2.5.0
>            Reporter: Jesse Anderson
>            Priority: Critical
>
> In 2.0, the KafkaConsumer poll(long) was deprecated and replaced with a 
> poll(Duration). The poll(Duration) does not block for consumer assignments.
> Now, there isn't a blocking method that can get consumer assignments.
> A new KafkaConsumer method needs to be added that blocks while getting 
> consumer assignments.
> The current workaround is to poll for a short amount of time in a while loop 
> and check the size of assignment(). This isn't a great method of verifying 
> the consumer assignment.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to