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

Gwen Shapira commented on KAFKA-1618:
-------------------------------------

I still think that using port 9092 as default makes tons of sense. Its true 
that admins can run Kafka brokers on any port, but in practice any 
client-server architecture has defaults and I'll be hard-pressed to think of 
tools that absolutely require port number to connect to a server.

Browsers default to port 80 (although we run HTTP servers on many other ports), 
ZK client will connect to port 2181 by default, HDFS will default to 8020 if 
you don't specify anything, etc, etc. People are used to not having to specify 
a port if they use a default - why do we want to make usage of Kafka any more 
difficult?

> Exception thrown when running console producer with no port number for the 
> broker
> ---------------------------------------------------------------------------------
>
>                 Key: KAFKA-1618
>                 URL: https://issues.apache.org/jira/browse/KAFKA-1618
>             Project: Kafka
>          Issue Type: Improvement
>    Affects Versions: 0.8.1.1
>            Reporter: Gwen Shapira
>            Assignee: BalajiSeshadri
>              Labels: newbie
>             Fix For: 0.8.2
>
>         Attachments: KAFKA-1618-ALL.patch, KAFKA-1618.patch
>
>
> When running console producer with just "localhost" as the broker list, I get 
> ArrayIndexOutOfBounds exception.
> I expect either a clearer error about arguments or for the producer to 
> "guess" a default port.
> [root@shapira-1 bin]# ./kafka-console-producer.sh  --topic rufus1 
> --broker-list localhost
> java.lang.ArrayIndexOutOfBoundsException: 1
>       at 
> kafka.client.ClientUtils$$anonfun$parseBrokerList$1.apply(ClientUtils.scala:102)
>       at 
> kafka.client.ClientUtils$$anonfun$parseBrokerList$1.apply(ClientUtils.scala:97)
>       at 
> scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
>       at 
> scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
>       at 
> scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
>       at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:47)
>       at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
>       at scala.collection.AbstractTraversable.map(Traversable.scala:105)
>       at kafka.client.ClientUtils$.parseBrokerList(ClientUtils.scala:97)
>       at 
> kafka.producer.BrokerPartitionInfo.<init>(BrokerPartitionInfo.scala:32)
>       at 
> kafka.producer.async.DefaultEventHandler.<init>(DefaultEventHandler.scala:41)
>       at kafka.producer.Producer.<init>(Producer.scala:59)
>       at kafka.producer.ConsoleProducer$.main(ConsoleProducer.scala:158)
>       at kafka.producer.ConsoleProducer.main(ConsoleProducer.scala)



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

Reply via email to