[ https://issues.apache.org/jira/browse/KAFKA-1935?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15876517#comment-15876517 ]
Jason Gustafson commented on KAFKA-1935: ---------------------------------------- I think this issue is poorly named. The consumer already uses a separate connection to the coordinator and its semantics depend on it doing so. What this issue is fixing is the hack we have used to allow NetworkClient to support multiple connections to the same broker. The solution is probably just to create an actual connectionId (currently the brokerId is used for this). One thing to keep in mind. Currently the NetworkClient is shared between the foreground and background threads in the consumer which has led to us needing to synchronize access through the ConsumerNetworkClient. This is actually sort of tricky to manage, so we've proposed to give the heartbeat thread its own NetworkClient. If we did that, then we wouldn't really need this feature, though I think use cases will probably emerge in the future. (By the way, I'm skeptical that sharing connections between different clients is a good idea with the current request handling approach--i.e. head-of-line blocking) > Consumer should use a separate socket for Coordinator connection > ---------------------------------------------------------------- > > Key: KAFKA-1935 > URL: https://issues.apache.org/jira/browse/KAFKA-1935 > Project: Kafka > Issue Type: Sub-task > Reporter: Guozhang Wang > Labels: newbie > > KAFKA-1925 is just a quick-fix of this issue, we need to let consumer to be > able to create separate sockets for the same server for coordinator / broker > roles. -- This message was sent by Atlassian JIRA (v6.3.15#6346)