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

Jonathan Creasy edited comment on KAFKA-371 at 7/19/12 8:20 PM:
----------------------------------------------------------------

Does it make sense to have a function to "validate a log" and call that any 
time you want to validate that the log you are reading/writing is valid? 
Potentially some of the validation would be redundant and called at times it 
didn't need to be, reducing capacity. 

So the balance is between consistent checking and efficient execution.
                
      was (Author: jcreasy):
    Does it make sense to have a function to "validate a log" and call that any 
time you want to validate that you are reading/writing a log? Potentially some 
of the validation would be redundant and called at times it didn't need to be, 
reducing capacity. 

So the balance is between consistent checking and efficient execution.
                  
> Creating topic of empty string puts broker in a bad state
> ---------------------------------------------------------
>
>                 Key: KAFKA-371
>                 URL: https://issues.apache.org/jira/browse/KAFKA-371
>             Project: Kafka
>          Issue Type: Bug
>    Affects Versions: 0.6, 0.7
>            Reporter: Martin Kleppmann
>            Assignee: Jay Kreps
>             Fix For: 0.8
>
>         Attachments: KAFKA-371-0.7.1.patch, KAFKA-371-0.8-v2.patch, 
> KAFKA-371-0.8.patch
>
>
> Using the Java client library, I accidentally published a message where the 
> topic name was the empty string. This put the broker in a bad state where 
> publishing became impossible, and the following exception was logged 10-20 
> times per second:
> 2012-06-21 00:41:30,324 [kafka-processor-3] ERROR kafka.network.Processor  - 
> Closing socket for /127.0.0.1 because of er
> ror
> kafka.common.InvalidTopicException: topic name can't be empty
>         at kafka.log.LogManager.getOrCreateLog(LogManager.scala:165)
>         at 
> kafka.server.KafkaRequestHandlers.kafka$server$KafkaRequestHandlers$$handleProducerRequest(KafkaRequestHandle
> rs.scala:75)
>         at 
> kafka.server.KafkaRequestHandlers.handleProducerRequest(KafkaRequestHandlers.scala:58)
>         at 
> kafka.server.KafkaRequestHandlers$$anonfun$handlerFor$1.apply(KafkaRequestHandlers.scala:43)
>         at 
> kafka.server.KafkaRequestHandlers$$anonfun$handlerFor$1.apply(KafkaRequestHandlers.scala:43)
>         at kafka.network.Processor.handle(SocketServer.scala:289)
>         at kafka.network.Processor.read(SocketServer.scala:312)
>         at kafka.network.Processor.run(SocketServer.scala:207)
>         at java.lang.Thread.run(Thread.java:679)
> Restarting Kafka did not help. I had to manually clear out the bad state in 
> Zookeeper to resolve the problem.
> The broker should not accept a message that would put it in such a bad state.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to