You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Mark Anderson (JIRA)" <ji...@apache.org> on 2019/04/02 14:15:02 UTC

[jira] [Created] (KAFKA-8182) IllegalStateException in NetworkClient.initiateConnect when handling UnknownHostException thrown from ClusterConnectionStates.connecting

Mark Anderson created KAFKA-8182:
------------------------------------

             Summary: IllegalStateException in NetworkClient.initiateConnect when handling UnknownHostException thrown from ClusterConnectionStates.connecting 
                 Key: KAFKA-8182
                 URL: https://issues.apache.org/jira/browse/KAFKA-8182
             Project: Kafka
          Issue Type: Bug
          Components: network
    Affects Versions: 2.2.0
            Reporter: Mark Anderson


When NetworkUtils.initiateConnect calls connectionStates.connecting an UnknownHostException can be thrown by ClientUtils.resolve when creating a new NodeConnectionState .

In the above case the nodeState map within ClusterConnectionStates will not contain an entry for the node ID.

The catch clause within NetworkUtils.initiateConnect immediately calls connectionStates.disconnected but this makes the assumption that a NodeConnectionState entry exists for the node ID. This assumption is incorrect when an UnknownHostException is thrown as described above and leads to an IllegalStateException like the following:
{noformat}
java.lang.IllegalStateException: No entry found for connection 2147483645|
  at org.apache.kafka.clients.ClusterConnectionStates.nodeState(ClusterConnectionStates.java:339)|
  at org.apache.kafka.clients.ClusterConnectionStates.disconnected(ClusterConnectionStates.java:143)|
  at org.apache.kafka.clients.NetworkClient.initiateConnect(NetworkClient.java:926)|
   at org.apache.kafka.clients.NetworkClient.ready(NetworkClient.java:287)|{noformat}



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