@@ -968,14 +968,14 @@ class DynamicListenerConfig(server: KafkaBroker) extends BrokerReconfigurable wi
968968
969969 def validateReconfiguration (newConfig : KafkaConfig ): Unit = {
970970 val oldConfig = server.config
971- val newListeners = listenersToMap( newConfig.listeners)
972- val oldAdvertisedListeners = listenersToMap( oldConfig.effectiveAdvertisedBrokerListeners)
973- val oldListeners = listenersToMap( oldConfig.listeners)
974- if (! oldAdvertisedListeners.keySet. subsetOf(newListeners.keySet ))
971+ val newListeners = newConfig.listeners.map(_.listenerName).toSet
972+ val oldAdvertisedListeners = oldConfig.effectiveAdvertisedBrokerListeners.map(_.listenerName).toSet
973+ val oldListeners = oldConfig.listeners.map(_.listenerName).toSet
974+ if (! oldAdvertisedListeners.subsetOf(newListeners))
975975 throw new ConfigException (s " Advertised listeners ' $oldAdvertisedListeners' must be a subset of listeners ' $newListeners' " )
976- if (! newListeners.keySet. subsetOf(newConfig.effectiveListenerSecurityProtocolMap.keySet))
976+ if (! newListeners.subsetOf(newConfig.effectiveListenerSecurityProtocolMap.keySet))
977977 throw new ConfigException (s " Listeners ' $newListeners' must be subset of listener map ' ${newConfig.effectiveListenerSecurityProtocolMap}' " )
978- newListeners.keySet. intersect(oldListeners.keySet ).foreach { listenerName =>
978+ newListeners.intersect(oldListeners).foreach { listenerName =>
979979 def immutableListenerConfigs (kafkaConfig : KafkaConfig , prefix : String ): Map [String , AnyRef ] = {
980980 kafkaConfig.originalsWithPrefix(prefix, true ).asScala.filter { case (key, _) =>
981981 // skip the reconfigurable configs
@@ -988,8 +988,6 @@ class DynamicListenerConfig(server: KafkaBroker) extends BrokerReconfigurable wi
988988 if (oldConfig.effectiveListenerSecurityProtocolMap(listenerName) != newConfig.effectiveListenerSecurityProtocolMap(listenerName))
989989 throw new ConfigException (s " Security protocol cannot be updated for existing listener $listenerName" )
990990 }
991- if (! oldAdvertisedListeners.contains(newConfig.interBrokerListenerName))
992- throw new ConfigException (s " Advertised listener must be specified for inter-broker listener ${newConfig.interBrokerListenerName}" )
993991 }
994992
995993 def reconfigure (oldConfig : KafkaConfig , newConfig : KafkaConfig ): Unit = {
0 commit comments