[ https://issues.apache.org/jira/browse/KAFKA-495?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Swapnil Ghike updated KAFKA-495: -------------------------------- Attachment: kafka-495-v2.patch 1. Actually the zookeeper code does not implement all the checks that I mentioned earlier. So I have implemented: * unix constraints (don't allow / and \0 chars, and don't allow . and .. filenames) * zookeeper constraints (dont allow chars in range \u0001-\u001F, \u007F-\u009F, \uD800-\uF8FF, \uFFF0-\uFFFF adnd \0) 2. The list of illegal chars is not configurable. 3. Regex used to check for illegal chars, . and .. filenames. It will be good if someone could take a look at the regular expression. 4. Topic name length is configurable. 5. Created a class TopicNameValidator in Utils. > Handle topic names with "/" on Kafka server > ------------------------------------------- > > Key: KAFKA-495 > URL: https://issues.apache.org/jira/browse/KAFKA-495 > Project: Kafka > Issue Type: Bug > Affects Versions: 0.7, 0.8 > Reporter: Neha Narkhede > Assignee: Swapnil Ghike > Labels: bugs > Fix For: 0.8, 0.7.1 > > Attachments: kafka-495-v1.patch, kafka-495-v2.patch > > > If a producer publishes data to topic "foo/foo", the Kafka server ends up > creating an invalid directory structure on the server. This corrupts the > zookeeper data structure for the topic - /brokers/topics/foo/foo. This leads > to rebalancing failures on the consumer as well as errors on the zookeeper > based producer. > We need to harden the invalid topic handling on the Kafka server side to > avoid this. -- 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