[ 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