[ https://issues.apache.org/jira/browse/KAFKA-2648?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14975075#comment-14975075 ]
Guozhang Wang commented on KAFKA-2648: -------------------------------------- The new consumer consolidates the old high-level and simple consumers, and for old simple consumer one does not need to specify group ids since it does not require any coordination at all. But given that I feel we do not need to be concerned about compatibility since the new consumer does not need to be compatible with the old consumer's APIs. The concerns I have, though, is about enforcing group id at the consumer side as the submitted PR: consumer instances may be used by tooling / admin / high-level services like streaming etc, which does not necessarily need to specify group ids since they do not need coordination. An alternative is to do exactly this ticket's title suggested: let the coordinator check if group id is empty, but not necessarily enforce non-empty group ids at the consumer side, and document "if you EVER want to subscribe during the lifetime of your consumer, you need to specify the group-id or otherwise subscribe() can throw a runtime exception". > Coordinator should not allow empty groupIds > ------------------------------------------- > > Key: KAFKA-2648 > URL: https://issues.apache.org/jira/browse/KAFKA-2648 > Project: Kafka > Issue Type: Bug > Affects Versions: 0.9.0.0 > Reporter: Jason Gustafson > Assignee: Jason Gustafson > > The coordinator currently allows consumer groups with empty groupIds, but > there probably aren't any cases where this is actually a good idea and it > tends to mask problems where different groups have simply not configured a > groupId. To address this, we can add a new error code, say INVALID_GROUP_ID, > which the coordinator can return when it encounters an empty groupID. We > should also make groupId a required property in consumer configuration and > enforce that it is non-empty. > It's a little unclear whether this change would have compatibility concerns. > The old consumer will fail with an empty groupId (because it cannot create > the zookeeper paths), but other clients may allow it. -- This message was sent by Atlassian JIRA (v6.3.4#6332)