[ https://issues.apache.org/jira/browse/KAFKA-10713?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17231332#comment-17231332 ]
Tom Bentley commented on KAFKA-10713: ------------------------------------- [~Jack-Lee] I took [~mimaison]'s point to be that if semicolons are _mistakenly_ used instead of commas then you don't get an error and it appears to works, but it does not because you actually only configured a single bootstrap server. > Surprising behaviour when bootstrap servers are separated by semicolons > ----------------------------------------------------------------------- > > Key: KAFKA-10713 > URL: https://issues.apache.org/jira/browse/KAFKA-10713 > Project: Kafka > Issue Type: Improvement > Reporter: Mickael Maison > Assignee: Tom Bentley > Priority: Major > > When creating a Kafka client with {{bootstrap.servers}} set to > "kafka-0:9092;kafka-1:9092;kafka-2:9092", it has a strange behaviour. > For once, there's no warning or error messages. The client will connect and > start working. However, it will only use the hostname after the last > semicolon as bootstrap server! > The configuration {{bootstrap.servers}} is defined as a {{List}} in > {{AbstractConfig}}. So from a configuration point of view, > "kafka-0:9092;kafka-1:9092;kafka-2:9092" is a single entry. > Then, {{Utils.getHost()}} returns "kafka-2" when parsing that string. > {code:java} > assertEquals("kafka-2", getHost("kafka-1:9092;kafka-1:9092;kafka-2:9092")); > {code} > So the client ends up with a single bootstrap server! > I believe semicolon are not valid characters in hostname/domain names, so we > should be able to provide better validation. -- This message was sent by Atlassian Jira (v8.3.4#803005)