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

Guozhang Wang commented on KAFKA-8793:
--------------------------------------

[~rocketraman] I think I found out the root cause of this issue, which is 
correlated to version probing such that if all clients are excluded as future 
consumers, the client involving in the actual assignment would be empty and 
hence the summed total capacity being zero. Will file a PR for fixing this 
issue asap.

> StickyTaskAssignor throws java.lang.ArithmeticException
> -------------------------------------------------------
>
>                 Key: KAFKA-8793
>                 URL: https://issues.apache.org/jira/browse/KAFKA-8793
>             Project: Kafka
>          Issue Type: Bug
>          Components: streams
>    Affects Versions: 2.3.0
>            Reporter: Raman Gupta
>            Assignee: Guozhang Wang
>            Priority: Critical
>
> Occassionally when starting a streams consumer that uses the static consumer 
> group protocol, I get the following error:
> {code:java}
> 2019-08-13 06:06:43,527 ERROR --- [691d2-StreamThread-1] 
> org.apa.kaf.str.pro.int.StreamThread              : stream-thread 
> [prod-cisSegmenter-777489d8-6cc5-48b4-8771-868d873691d2-StreamThread-1] 
> Encountered the following er
> ror during processing:
> EXCEPTION: java.lang.ArithmeticException: / by zero
>     at 
> org.apache.kafka.streams.processor.internals.assignment.StickyTaskAssignor.assignActive(StickyTaskAssignor.java:76)
>  ~[kafka-streams-2.3.0.jar:?]
>     at 
> org.apache.kafka.streams.processor.internals.assignment.StickyTaskAssignor.assign(StickyTaskAssignor.java:52)
>  ~[kafka-streams-2.3.0.jar:?]
>     at 
> org.apache.kafka.streams.processor.internals.StreamsPartitionAssignor.assign(StreamsPartitionAssignor.java:634)
>  ~[kafka-streams-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.ConsumerCoordinator.performAssignment(ConsumerCoordinator.java:424)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.AbstractCoordinator.onJoinLeader(AbstractCoordinator.java:622)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.AbstractCoordinator.access$1100(AbstractCoordinator.java:107)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.AbstractCoordinator$JoinGroupResponseHandler.handle(AbstractCoordinator.java:544)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.AbstractCoordinator$JoinGroupResponseHandler.handle(AbstractCoordinator.java:527)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.AbstractCoordinator$CoordinatorResponseHandler.onSuccess(AbstractCoordinator.java:978)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.AbstractCoordinator$CoordinatorResponseHandler.onSuccess(AbstractCoordinator.java:958)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.RequestFuture$1.onSuccess(RequestFuture.java:204)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.RequestFuture.fireSuccess(RequestFuture.java:167)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.RequestFuture.complete(RequestFuture.java:127)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient$RequestFutureCompletionHandler.fireCompletion(ConsumerNetworkClient.java:578)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.firePendingCompletedRequests(ConsumerNetworkClient.java:388)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:294)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:233)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:212)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.AbstractCoordinator.joinGroupIfNeeded(AbstractCoordinator.java:415)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.AbstractCoordinator.ensureActiveGroup(AbstractCoordinator.java:358)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.internals.ConsumerCoordinator.poll(ConsumerCoordinator.java:353)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.KafkaConsumer.updateAssignmentMetadataIfNeeded(KafkaConsumer.java:1251)
>  ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.KafkaConsumer.poll(KafkaConsumer.java:1216) 
> ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.clients.consumer.KafkaConsumer.poll(KafkaConsumer.java:1201) 
> ~[kafka-clients-2.3.0.jar:?]
>     at 
> org.apache.kafka.streams.processor.internals.StreamThread.pollRequests(StreamThread.java:941)
>  ~[kafka-streams-2.3.0.jar:?]
>     at 
> org.apache.kafka.streams.processor.internals.StreamThread.runOnce(StreamThread.java:850)
>  ~[kafka-streams-2.3.0.jar:?]
>     at 
> org.apache.kafka.streams.processor.internals.StreamThread.runLoop(StreamThread.java:805)
>  ~[kafka-streams-2.3.0.jar:?]
>     at 
> org.apache.kafka.streams.processor.internals.StreamThread.run(StreamThread.java:774)
>  [kafka-streams-2.3.0.jar:?]
> {code}
> It seems to happen after a restart of a process containing a stream, and it 
> does not happen consistently, however it does happen somewhat regularly.
> My Kafka server is 2.3.0, with a patch for KAFKA-8715.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

Reply via email to