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

Neha Narkhede commented on KAFKA-1238:
--------------------------------------

Regarding #2, I'm not so sure I understood the logic behind updating metadata 
only where there are no brokers. When do you expect topic metadata to return no 
brokers? Also, if the metadata request doesn't have an error code (which means 
it succeeded for all topics it asked for), then why would we retry? Also, if it 
failed only for a subset of topics, why not just retry with the subset of 
topics that failed instead of all topics. And, the bug is still not fixed with 
the latest patch, still hangs in an infinite loop for a new topic that is auto 
created. Will go through the code in more detail, as I may be missing something 
obvious here.

> New producer hangs in a loop detecting metadata for auto created topics
> -----------------------------------------------------------------------
>
>                 Key: KAFKA-1238
>                 URL: https://issues.apache.org/jira/browse/KAFKA-1238
>             Project: Kafka
>          Issue Type: Bug
>          Components: producer 
>            Reporter: Neha Narkhede
>            Assignee: Jay Kreps
>            Priority: Critical
>         Attachments: KAFKA-1238-v1.patch, KAFKA-1238.patch
>
>
> New producer hangs in a loop detecting metadata for auto created topics -
> java.lang.IllegalStateException: No known nodes.
>       at kafka.common.Cluster.nextNode(Cluster.java:97)
>       at 
> kafka.clients.producer.internals.Sender.maybeMetadataRequest(Sender.java:154)
>       at kafka.clients.producer.internals.Sender.run(Sender.java:120)
>       at kafka.clients.producer.internals.Sender.run(Sender.java:84)
>       at java.lang.Thread.run(Thread.java:695)
> java.lang.IllegalStateException: No known nodes.
>       at kafka.common.Cluster.nextNode(Cluster.java:97)
>       at 
> kafka.clients.producer.internals.Sender.maybeMetadataRequest(Sender.java:154)
>       at kafka.clients.producer.internals.Sender.run(Sender.java:120)
>       at kafka.clients.producer.internals.Sender.run(Sender.java:84)
>       at java.lang.Thread.run(Thread.java:695)
> java.lang.IllegalStateException: No known nodes.
>       at kafka.common.Cluster.nextNode(Cluster.java:97)
>       at 
> kafka.clients.producer.internals.Sender.maybeMetadataRequest(Sender.java:154)
>       at kafka.clients.producer.internals.Sender.run(Sender.java:120)
>       at kafka.clients.producer.internals.Sender.run(Sender.java:84)
>       at java.lang.Thread.run(Thread.java:695)
> java.lang.IllegalStateException: No known nodes.
>       at kafka.common.Cluster.nextNode(Cluster.java:97)
>       at 
> kafka.clients.producer.internals.Sender.maybeMetadataRequest(Sender.java:154)
>       at kafka.clients.producer.internals.Sender.run(Sender.java:120)
>       at kafka.clients.producer.internals.Sender.run(Sender.java:84)
>       at java.lang.Thread.run(Thread.java:695)
> java.lang.IllegalStateException: No known nodes.
>       at kafka.common.Cluster.nextNode(Cluster.java:97)
>       at 
> kafka.clients.producer.internals.Sender.maybeMetadataRequest(Sender.java:154)
>       at kafka.clients.producer.internals.Sender.run(Sender.java:120)
>       at kafka.clients.producer.internals.Sender.run(Sender.java:84)
>       at java.lang.Thread.run(Thread.java:695)
> java.lang.IllegalStateException: No known nodes.
>       at kafka.common.Cluster.nextNode(Cluster.java:97)
>       at 
> kafka.clients.producer.internals.Sender.maybeMetadataRequest(Sender.java:154)
>       at kafka.clients.producer.internals.Sender.run(Sender.java:120)
>       at kafka.clients.producer.internals.Sender.run(Sender.java:84)
>       at java.lang.Thread.run(Thread.java:695)
> The producer needs to be restarted to start sending data to the auto created 
> topic



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to