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

Manikumar Reddy commented on KAFKA-2198:
----------------------------------------

[~gwenshap] Thanks for the review.  Sample output is given below.

{code}
sh kafka-topics.sh --alter --topic UNKNOWN -config min.insync.replicas=2 
--zookeeper localhost && echo succeeded
Error while executing topic command : Topic UNKNOWN does not exist on ZK path 
localhost
[2015-07-10 22:59:01,808] ERROR java.lang.IllegalArgumentException: Topic 
UNKNOWN does not exist on ZK path localhost
        at kafka.admin.TopicCommand$.alterTopic(TopicCommand.scala:104)
        at kafka.admin.TopicCommand$.main(TopicCommand.scala:56)
        at kafka.admin.TopicCommand.main(TopicCommand.scala)
 (kafka.admin.TopicCommand$)
{code}
{code}
$ sh kafka-topics.sh --alter --topic EVENT --config min.insync.replicasTYPO=2 
--zookeeper localhost && echo succeeded
Error while executing topic command : requirement failed: Unknown configuration 
"min.insync.replicasTYPO".
[2015-07-10 23:02:04,273] ERROR java.lang.IllegalArgumentException: requirement 
failed: Unknown configuration "min.insync.replicasTYPO".
        at scala.Predef$.require(Predef.scala:233)
        at 
kafka.log.LogConfig$$anonfun$validateNames$1.apply(LogConfig.scala:185)
        at 
kafka.log.LogConfig$$anonfun$validateNames$1.apply(LogConfig.scala:184)
        at scala.collection.Iterator$class.foreach(Iterator.scala:727)
        at scala.collection.AbstractIterator.foreach(Iterator.scala:1157)
        at kafka.log.LogConfig$.validateNames(LogConfig.scala:184)
        at kafka.log.LogConfig$.validate(LogConfig.scala:192)
        at 
kafka.admin.TopicCommand$.parseTopicConfigsToBeAdded(TopicCommand.scala:217)
        at 
kafka.admin.TopicCommand$$anonfun$alterTopic$1.apply(TopicCommand.scala:110)
        at 
kafka.admin.TopicCommand$$anonfun$alterTopic$1.apply(TopicCommand.scala:107)
        at 
scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
        at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:47)
        at kafka.admin.TopicCommand$.alterTopic(TopicCommand.scala:107)
        at kafka.admin.TopicCommand$.main(TopicCommand.scala:56)
        at kafka.admin.TopicCommand.main(TopicCommand.scala)
 (kafka.admin.TopicCommand$)
{code}

> kafka-topics.sh exits with 0 status on failures
> -----------------------------------------------
>
>                 Key: KAFKA-2198
>                 URL: https://issues.apache.org/jira/browse/KAFKA-2198
>             Project: Kafka
>          Issue Type: Bug
>          Components: admin
>    Affects Versions: 0.8.2.1
>            Reporter: Bob Halley
>            Assignee: Manikumar Reddy
>         Attachments: KAFKA-2198.patch, KAFKA-2198_2015-05-19_18:27:01.patch, 
> KAFKA-2198_2015-05-19_18:41:25.patch, KAFKA-2198_2015-07-10_22:02:02.patch
>
>
> In the two failure cases below, kafka-topics.sh exits with status 0.  You 
> shouldn't need to parse output from the command to know if it failed or not.
> Case 1: Forgetting to add Kafka zookeeper chroot path to zookeeper spec
> $ kafka-topics.sh --alter --topic foo --config min.insync.replicas=2 
> --zookeeper 10.0.0.1 && echo succeeded
> succeeded
> Case 2: Bad config option.  (Also, do we really need the java backtrace?  
> It's a lot of noise most of the time.)
> $ kafka-topics.sh --alter --topic foo --config min.insync.replicasTYPO=2 
> --zookeeper 10.0.0.1/kafka && echo succeeded
> Error while executing topic command requirement failed: Unknown configuration 
> "min.insync.replicasTYPO".
> java.lang.IllegalArgumentException: requirement failed: Unknown configuration 
> "min.insync.replicasTYPO".
>     at scala.Predef$.require(Predef.scala:233)
>     at kafka.log.LogConfig$$anonfun$validateNames$1.apply(LogConfig.scala:183)
>     at kafka.log.LogConfig$$anonfun$validateNames$1.apply(LogConfig.scala:182)
>     at scala.collection.Iterator$class.foreach(Iterator.scala:727)
>     at scala.collection.AbstractIterator.foreach(Iterator.scala:1157)
>     at kafka.log.LogConfig$.validateNames(LogConfig.scala:182)
>     at kafka.log.LogConfig$.validate(LogConfig.scala:190)
>     at 
> kafka.admin.TopicCommand$.parseTopicConfigsToBeAdded(TopicCommand.scala:205)
>     at 
> kafka.admin.TopicCommand$$anonfun$alterTopic$1.apply(TopicCommand.scala:103)
>     at 
> kafka.admin.TopicCommand$$anonfun$alterTopic$1.apply(TopicCommand.scala:100)
>     at 
> scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
>     at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:47)
>     at kafka.admin.TopicCommand$.alterTopic(TopicCommand.scala:100)
>     at kafka.admin.TopicCommand$.main(TopicCommand.scala:57)
>     at kafka.admin.TopicCommand.main(TopicCommand.scala)
> succeeded



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to