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

Swapnil Ghike commented on KAFKA-697:
-------------------------------------

Currently we allow only alphanumerics, - and _ in the clientId, topic name and 
groupId. The topic name validation criteria were decided in KAFKA-495 and later 
while deciding to validate clientId and groupId in KAFKA-646, we tried to 
maintain consistency with the topic name validation. 

As discussed in KAFKA-495, we don't have any strong reason to disallow dot in 
the validation, but we did not see any strong reason to make special case 
exceptions at the time as well and decided to make the validation criteria 
strict.

For now, can we change the system test to not use dot? We can add it to the set 
of legal characters later though if more use cases arise.
                
> ConsoleConsumer throws InvalidConfigException for "." in client id
> ------------------------------------------------------------------
>
>                 Key: KAFKA-697
>                 URL: https://issues.apache.org/jira/browse/KAFKA-697
>             Project: Kafka
>          Issue Type: Bug
>            Reporter: John Fung
>
> kafka.common.InvalidConfigException: client.id 
> console-consumer-16946-ConsumerFetcherThread-console-consumer-16946_XXXX-host18.corp-1358006528116-991e3f2d-0-1
>  is illegal, contains a character other than ASCII alphanumerics, _ and -
>         at kafka.common.Config$class.validateChars(Config.scala:32)
>         at 
> kafka.consumer.ConsumerConfig$.validateChars(ConsumerConfig.scala:25)
>         at 
> kafka.consumer.ConsumerConfig$.validateClientId(ConsumerConfig.scala:55)
>         at kafka.consumer.SimpleConsumer.<init>(SimpleConsumer.scala:88)
>         at 
> kafka.server.AbstractFetcherThread.<init>(AbstractFetcherThread.scala:44)
>         at 
> kafka.consumer.ConsumerFetcherThread.<init>(ConsumerFetcherThread.scala:27)
>         at 
> kafka.consumer.ConsumerFetcherManager.createFetcherThread(ConsumerFetcherManager.scala:93)
>         at 
> kafka.server.AbstractFetcherManager.addFetcher(AbstractFetcherManager.scala:44)
>         at 
> kafka.consumer.ConsumerFetcherManager$$anon$1$$anonfun$doWork$3.apply(ConsumerFetcherManager.scala:75)
>         at 
> kafka.consumer.ConsumerFetcherManager$$anon$1$$anonfun$doWork$3.apply(ConsumerFetcherManager.scala:72)
>         at 
> scala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:80)
>         at 
> scala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:80)
>         at scala.collection.Iterator$class.foreach(Iterator.scala:631)
>         at 
> scala.collection.mutable.HashTable$$anon$1.foreach(HashTable.scala:161)
>         at 
> scala.collection.mutable.HashTable$class.foreachEntry(HashTable.scala:194)
>         at scala.collection.mutable.HashMap.foreachEntry(HashMap.scala:39)
>         at scala.collection.mutable.HashMap.foreach(HashMap.scala:80)
>         at 
> kafka.consumer.ConsumerFetcherManager$$anon$1.doWork(ConsumerFetcherManager.scala:72)
>         at kafka.utils.ShutdownableThread.run(ShutdownableThread.scala:50)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to