Mark Cho created KAFKA-7890:
-------------------------------

             Summary: Invalidate ClusterConnectionState cache for a broker if 
the hostname of the broker changes.
                 Key: KAFKA-7890
                 URL: https://issues.apache.org/jira/browse/KAFKA-7890
             Project: Kafka
          Issue Type: Bug
          Components: network
    Affects Versions: 2.1.0
            Reporter: Mark Cho


We've ran into a similar issue as this ticket: 
[https://issues.apache.org/jira/projects/KAFKA/issues/KAFKA-7755]

The fix for KAFKA-7755 doesn't work for this case as the hostname is not 
updated when resolving the addresses.

`ClusterConnectionStates::connecting` method makes an assumption that broker ID 
will always map to same hostname. In our case, when a broker is terminated in 
AWS, it is replaced by a different instance under the same broker ID. 

In this case, the consumer fails to connect to the right host when the broker 
ID returns to the cluster. For example, we see the following line in DEBUG logs:
{code:java}
Initiating connection to node 100.66.7.94:7101 (id: 1 rack: us-east-1c) using 
address /100.66.14.165
{code}
It tries to connect to the new broker instance using the wrong (old) IP address.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to