[ 
https://issues.apache.org/jira/browse/KAFKA-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lianet Magrans resolved KAFKA-16778.
------------------------------------
    Resolution: Fixed

This was fixed by moving all subscription state changes to the background 
(where this FetchRequestManager runs).
Several jiras behind the fix, all referenced here 
https://issues.apache.org/jira/browse/KAFKA-16290?focusedCommentId=17873962&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-17873962

> AsyncKafkaConsumer fetcher might occasionally try to fetch to a revoked 
> partition
> ---------------------------------------------------------------------------------
>
>                 Key: KAFKA-16778
>                 URL: https://issues.apache.org/jira/browse/KAFKA-16778
>             Project: Kafka
>          Issue Type: Bug
>          Components: clients, consumer
>            Reporter: Philip Nee
>            Priority: Major
>              Labels: kip-848-client-support
>
>  
> {code:java}
> java.lang.IllegalStateException: No current assignment for partition 
> output-topic-26
>     at 
> org.apache.kafka.clients.consumer.internals.SubscriptionState.assignedState(SubscriptionState.java:369)
>     at 
> org.apache.kafka.clients.consumer.internals.SubscriptionState.position(SubscriptionState.java:542)
>     at 
> org.apache.kafka.clients.consumer.internals.AbstractFetch.prepareFetchRequests(AbstractFetch.java:411)
>     at 
> org.apache.kafka.clients.consumer.internals.FetchRequestManager.poll(FetchRequestManager.java:74)
>     at 
> org.apache.kafka.clients.consumer.internals.ConsumerNetworkThread.lambda$new$2(ConsumerNetworkThread.java:159)
>     at 
> org.apache.kafka.clients.consumer.internals.ConsumerNetworkThread.lambda$runOnce$0(ConsumerNetworkThread.java:143)
>     at 
> java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
>     at 
> java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
>     at 
> java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
>     at 
> java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
>     at 
> java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
>     at 
> java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
>     at 
> java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
>     at 
> java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
>     at 
> java.base/java.util.stream.ReferencePipeline.reduce(ReferencePipeline.java:657)
>     at 
> org.apache.kafka.clients.consumer.internals.ConsumerNetworkThread.runOnce(ConsumerNetworkThread.java:145)
>     at 
> org.apache.kafka.clients.consumer.internals.ConsumerNetworkThread.run(ConsumerNetworkThread.java:94)
>  {code}
> The setup is - running 30 consumers consuming from a 300 partitions topic.
> We can occasionally get an IllegalStateException from the consumer. 
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to