[jira] [Comment Edited] (KAFKA-15565) KafkaAdminClient does not honor request timeout ms
[ https://issues.apache.org/jira/browse/KAFKA-15565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17773463#comment-17773463 ] Sankalp Bhatia edited comment on KAFKA-15565 at 10/9/23 7:34 PM: - Thanks. The reason I say it is a bug is because the overriding you mentioned in [https://github.com/apache/kafka/blob/bf51a50a564ee43d3515c82fc706f17325c4602f/clients/src/main/java/org/apache/kafka/clients/NetworkClient.java#L571] takes the min of 1. default api timeout (60s) 2. metadataTimeout: This I believe is derived from the default request timeout if the metadata request is pending.(which is hardcoded to 1hr) 3. default request timeout (hardcoded to 1hr). (But as per contract should be derived from client config) Now consider a case where the client is unable to create a socket connection. Ideally, such a case should be handled in line [584|https://github.com/apache/kafka/blob/bf51a50a564ee43d3515c82fc706f17325c4602f/clients/src/main/java/org/apache/kafka/clients/NetworkClient.java#L584], but since the selector enters a long poll of 60s (this can happen when no other selection key is ready), it only gets to know about the timed out connection after 60s, and by that time the Client Call needs to be dropped without any retries. Had the adminClient honored the request timeout, the poll would have been shorter and the request could have been retried. was (Author: sankalpbhatia): Thanks. The reason I say it is a bug is because the overriding you mentioned in [https://github.com/apache/kafka/blob/bf51a50a564ee43d3515c82fc706f17325c4602f/clients/src/main/java/org/apache/kafka/clients/NetworkClient.java#L571] takes the min of 1. default api timeout (60s) 2. metadataTimeout: This I believe is derived from the default request timeout if the metadata request is pending.(which is hardcoded to 1hr) 3. default request timeout (hardcoded to 1hr). (But as per contract should be derived from client config) Now consider a case where the client is unable to create a socket connection. Ideally, such a case should be handled in line [584|https://github.com/apache/kafka/blob/bf51a50a564ee43d3515c82fc706f17325c4602f/clients/src/main/java/org/apache/kafka/clients/NetworkClient.java#L584], but since the selector enters a long poll of 60s, it only gets to know about the timed out connection after 60s, and by that time the Client Call needs to be dropped without any retries. Had the adminClient honored the request timeout, the poll would have been shorter and the request could have been retried. > KafkaAdminClient does not honor request timeout ms > --- > > Key: KAFKA-15565 > URL: https://issues.apache.org/jira/browse/KAFKA-15565 > Project: Kafka > Issue Type: Bug >Reporter: Sankalp Bhatia >Assignee: Sankalp Bhatia >Priority: Minor > > It seems to me there is a bug in this line in the KafkaAdminClient. For the > constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a > hardcoded value of 1 hour. Ideally, this should be derived from the client > config "request.timeout.ms" from the AdminClientConfig[2]. > References > [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] > [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Comment Edited] (KAFKA-15565) KafkaAdminClient does not honor request timeout ms
[ https://issues.apache.org/jira/browse/KAFKA-15565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17773463#comment-17773463 ] Sankalp Bhatia edited comment on KAFKA-15565 at 10/9/23 7:25 PM: - Thanks. The reason I say it is a bug is because the overriding you mentioned in [https://github.com/apache/kafka/blob/bf51a50a564ee43d3515c82fc706f17325c4602f/clients/src/main/java/org/apache/kafka/clients/NetworkClient.java#L571] takes the min of 1. default api timeout (60s) 2. metadataTimeout: This I believe is derived from the default request timeout if the metadata request is pending.(which is hardcoded to 1hr) 3. default request timeout (hardcoded to 1hr). (But as per contract should be derived from client config) Now consider a case where the client is unable to create a socket connection. Ideally, such a case should be handled in line [584|https://github.com/apache/kafka/blob/bf51a50a564ee43d3515c82fc706f17325c4602f/clients/src/main/java/org/apache/kafka/clients/NetworkClient.java#L584], but since the selector enters a long poll of 60s, it only gets to know about the timed out connection after 60s, and by that time the Client Call needs to be dropped without any retries. Had the adminClient honored the request timeout, the poll would have been shorter and the request could have been retried. was (Author: sankalpbhatia): Thanks. The reason I say it is a bug is because the overriding you mentioned in [https://github.com/apache/kafka/blob/bf51a50a564ee43d3515c82fc706f17325c4602f/clients/src/main/java/org/apache/kafka/clients/NetworkClient.java#L571] takes the min of # default api timeout (60s) # metadataTimeout: This I believe is derived from the default request timeout if the metadata request is pending.(which is hardcoded to 1hr) # default request timeout (hardcoded to 1hr). (But as per contract should be derived from client config) Now consider a case where the client is unable to create a socket connection. Ideally, such a case should be handled in line [584|https://github.com/apache/kafka/blob/bf51a50a564ee43d3515c82fc706f17325c4602f/clients/src/main/java/org/apache/kafka/clients/NetworkClient.java#L584], but since the selector enters a long poll of 60s, it only gets to know about the timed out connection after 60s, and by that time the Client Call needs to be dropped without any retries. Had the adminClient honored the request timeout, the poll would have been shorter and the request could have been retried. > KafkaAdminClient does not honor request timeout ms > --- > > Key: KAFKA-15565 > URL: https://issues.apache.org/jira/browse/KAFKA-15565 > Project: Kafka > Issue Type: Bug >Reporter: Sankalp Bhatia >Assignee: Sankalp Bhatia >Priority: Minor > > It seems to me there is a bug in this line in the KafkaAdminClient. For the > constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a > hardcoded value of 1 hour. Ideally, this should be derived from the client > config "request.timeout.ms" from the AdminClientConfig[2]. > References > [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] > [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (KAFKA-15565) KafkaAdminClient does not honor request timeout ms
[ https://issues.apache.org/jira/browse/KAFKA-15565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17773463#comment-17773463 ] Sankalp Bhatia commented on KAFKA-15565: Thanks. The reason I say it is a bug is because the overriding you mentioned in [https://github.com/apache/kafka/blob/bf51a50a564ee43d3515c82fc706f17325c4602f/clients/src/main/java/org/apache/kafka/clients/NetworkClient.java#L571] takes the min of # default api timeout (60s) # metadataTimeout: This I believe is derived from the default request timeout if the metadata request is pending.(which is hardcoded to 1hr) # default request timeout (hardcoded to 1hr). (But as per contract should be derived from client config) Now consider a case where the client is unable to create a socket connection. Ideally, such a case should be handled in line [584|https://github.com/apache/kafka/blob/bf51a50a564ee43d3515c82fc706f17325c4602f/clients/src/main/java/org/apache/kafka/clients/NetworkClient.java#L584], but since the selector enters a long poll of 60s, it only gets to know about the timed out connection after 60s, and by that time the Client Call needs to be dropped without any retries. Had the adminClient honored the request timeout, the poll would have been shorter and the request could have been retried. > KafkaAdminClient does not honor request timeout ms > --- > > Key: KAFKA-15565 > URL: https://issues.apache.org/jira/browse/KAFKA-15565 > Project: Kafka > Issue Type: Bug >Reporter: Sankalp Bhatia >Assignee: Sankalp Bhatia >Priority: Minor > > It seems to me there is a bug in this line in the KafkaAdminClient. For the > constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a > hardcoded value of 1 hour. Ideally, this should be derived from the client > config "request.timeout.ms" from the AdminClientConfig[2]. > References > [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] > [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (KAFKA-15565) KafkaAdminClient does not honor request timeout ms
[ https://issues.apache.org/jira/browse/KAFKA-15565?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sankalp Bhatia updated KAFKA-15565: --- Description: It seems to me there is a bug in this line in the KafkaAdminClient. For the constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a hardcoded value of 1 hour. Ideally, this should be derived from the client config "request.timeout.ms" from the AdminClientConfig[2]. References [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] was: It seems to me there is a bug in this line in the KafkaAdminClient. For the constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a hardcoded value of 1 hour. Ideally, this should be derived from the client config ``request.timeout.ms`` from the AdminClientConfig[2]. References [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] > KafkaAdminClient does not honor request timeout ms > --- > > Key: KAFKA-15565 > URL: https://issues.apache.org/jira/browse/KAFKA-15565 > Project: Kafka > Issue Type: Bug >Reporter: Sankalp Bhatia >Assignee: Sankalp Bhatia >Priority: Minor > > It seems to me there is a bug in this line in the KafkaAdminClient. For the > constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a > hardcoded value of 1 hour. Ideally, this should be derived from the client > config "request.timeout.ms" from the AdminClientConfig[2]. > References > [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] > [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (KAFKA-15565) KafkaAdminClient does not honor request timeout ms
[ https://issues.apache.org/jira/browse/KAFKA-15565?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sankalp Bhatia updated KAFKA-15565: --- Description: It seems to me there is a bug in this line in the KafkaAdminClient. For the constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a hardcoded value of 1 hour. Ideally, this should be derived from the client config request.timeout.ms from the AdminClientConfig[2]. References [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] was: It seems to me there is a bug in this line in the KafkaAdminClient. For the constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a hardcoded value of 1 hour. Ideally, this should be derived from the client config /** request.timeout.ms */ from the AdminClientConfig[2]. References [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] > KafkaAdminClient does not honor request timeout ms > --- > > Key: KAFKA-15565 > URL: https://issues.apache.org/jira/browse/KAFKA-15565 > Project: Kafka > Issue Type: Bug >Reporter: Sankalp Bhatia >Assignee: Sankalp Bhatia >Priority: Minor > > It seems to me there is a bug in this line in the KafkaAdminClient. For the > constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a > hardcoded value of 1 hour. Ideally, this should be derived from the client > config request.timeout.ms from the AdminClientConfig[2]. > References > [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] > [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (KAFKA-15565) KafkaAdminClient does not honor request timeout ms
[ https://issues.apache.org/jira/browse/KAFKA-15565?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sankalp Bhatia updated KAFKA-15565: --- Description: It seems to me there is a bug in this line in the KafkaAdminClient. For the constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a hardcoded value of 1 hour. Ideally, this should be derived from the client config ``request.timeout.ms`` from the AdminClientConfig[2]. References [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] was: It seems to me there is a bug in this line in the KafkaAdminClient. For the constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a hardcoded value of 1 hour. Ideally, this should be derived from the client config request.timeout.ms from the AdminClientConfig[2]. References [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] > KafkaAdminClient does not honor request timeout ms > --- > > Key: KAFKA-15565 > URL: https://issues.apache.org/jira/browse/KAFKA-15565 > Project: Kafka > Issue Type: Bug >Reporter: Sankalp Bhatia >Assignee: Sankalp Bhatia >Priority: Minor > > It seems to me there is a bug in this line in the KafkaAdminClient. For the > constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a > hardcoded value of 1 hour. Ideally, this should be derived from the client > config ``request.timeout.ms`` from the AdminClientConfig[2]. > References > [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] > [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (KAFKA-15565) KafkaAdminClient does not honor request timeout ms
[ https://issues.apache.org/jira/browse/KAFKA-15565?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sankalp Bhatia updated KAFKA-15565: --- Description: It seems to me there is a bug in this line in the KafkaAdminClient. For the constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a hardcoded value of 1 hour. Ideally, this should be derived from the client config /** request.timeout.ms */ from the AdminClientConfig[2]. References [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] was: It seems to me there is a bug in this line in the KafkaAdminClient. For the constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a hardcoded value of 1 hour. Ideally, this should be derived from the client config /** request.timeout.ms */ from the AdminClientConfig[2]. References [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] [2]https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98 > KafkaAdminClient does not honor request timeout ms > --- > > Key: KAFKA-15565 > URL: https://issues.apache.org/jira/browse/KAFKA-15565 > Project: Kafka > Issue Type: Bug >Reporter: Sankalp Bhatia >Assignee: Sankalp Bhatia >Priority: Minor > > It seems to me there is a bug in this line in the KafkaAdminClient. For the > constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a > hardcoded value of 1 hour. Ideally, this should be derived from the client > config /** request.timeout.ms */ from the > AdminClientConfig[2]. > References > [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] > [2][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (KAFKA-15565) KafkaAdminClient does not honor request timeout ms
Sankalp Bhatia created KAFKA-15565: -- Summary: KafkaAdminClient does not honor request timeout ms Key: KAFKA-15565 URL: https://issues.apache.org/jira/browse/KAFKA-15565 Project: Kafka Issue Type: Bug Reporter: Sankalp Bhatia Assignee: Sankalp Bhatia It seems to me there is a bug in this line in the KafkaAdminClient. For the constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a hardcoded value of 1 hour. Ideally, this should be derived from the client config /** request.timeout.ms */ from the AdminClientConfig[2]. References [1]https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521 [2]https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98 -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (KAFKA-15565) KafkaAdminClient does not honor request timeout ms
[ https://issues.apache.org/jira/browse/KAFKA-15565?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sankalp Bhatia updated KAFKA-15565: --- Description: It seems to me there is a bug in this line in the KafkaAdminClient. For the constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a hardcoded value of 1 hour. Ideally, this should be derived from the client config /** request.timeout.ms */ from the AdminClientConfig[2]. References [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] [2]https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98 was: It seems to me there is a bug in this line in the KafkaAdminClient. For the constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a hardcoded value of 1 hour. Ideally, this should be derived from the client config /** request.timeout.ms */ from the AdminClientConfig[2]. References [1]https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521 [2]https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98 > KafkaAdminClient does not honor request timeout ms > --- > > Key: KAFKA-15565 > URL: https://issues.apache.org/jira/browse/KAFKA-15565 > Project: Kafka > Issue Type: Bug >Reporter: Sankalp Bhatia >Assignee: Sankalp Bhatia >Priority: Minor > > It seems to me there is a bug in this line in the KafkaAdminClient. For the > constructor arg defaultRequestTimeoutMs of NetworkClient [1], it uses a > hardcoded value of 1 hour. Ideally, this should be derived from the client > config /** request.timeout.ms */ from the > AdminClientConfig[2]. > References > [1][https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L521] > [2]https://github.com/apache/kafka/blob/1c3eb4395a15cf4f45b6dc0d39effb3dc087f5a4/clients/src/main/java/org/apache/kafka/clients/admin/AdminClientConfig.java#L98 -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (KAFKA-9114) Kafka broker fails to establish secure zookeeper connection via SSL.
[ https://issues.apache.org/jira/browse/KAFKA-9114?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17198843#comment-17198843 ] Sankalp Bhatia commented on KAFKA-9114: --- Can you share what the issue was? > Kafka broker fails to establish secure zookeeper connection via SSL. > > > Key: KAFKA-9114 > URL: https://issues.apache.org/jira/browse/KAFKA-9114 > Project: Kafka > Issue Type: Bug > Components: core >Affects Versions: 2.3.0, 2.3.1 >Reporter: Gangadhar Balikai >Priority: Minor > > When i try to enable TLS/SSL between Kafka broker (tried 2.3.0 && 2.3.1) and > zookeeper (3.5.5 & 3.5.6) cluster of 3 nodes. > kafka broker fails with following stack trace, i have given stacktrace, kafka > & zookeeper configurations used below. > *JDK*: 1_8_0_161_64 > {color:#de350b}[2019-10-30 03:52:10,036] ERROR Fatal error during KafkaServer > startup. Prepare to shutdown (kafka.server.KafkaServer){color} > {color:#de350b}java.io.IOException: Couldn't instantiate > org.apache.zookeeper.ClientCnxnSocketNetty{color} > {color:#de350b} at > org.apache.zookeeper.ZooKeeper.getClientCnxnSocket(ZooKeeper.java:1851){color} > {color:#de350b} at > org.apache.zookeeper.ZooKeeper.(ZooKeeper.java:453){color} > {color:#de350b} at > org.apache.zookeeper.ZooKeeper.(ZooKeeper.java:384){color} > {color:#de350b} at > kafka.zookeeper.ZooKeeperClient.(ZooKeeperClient.scala:103){color} > {color:#de350b} at > kafka.zk.KafkaZkClient$.apply(KafkaZkClient.scala:1826){color} > {color:#de350b} at > kafka.server.KafkaServer.createZkClient$1(KafkaServer.scala:364){color} > {color:#de350b} at > kafka.server.KafkaServer.initZkClient(KafkaServer.scala:387){color} > {color:#de350b} at > kafka.server.KafkaServer.startup(KafkaServer.scala:207){color} > {color:#de350b} at > kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:38){color} > {color:#de350b} at kafka.Kafka$.main(Kafka.scala:84){color} > {color:#de350b} at kafka.Kafka.main(Kafka.scala){color} > {color:#de350b}Caused by: java.lang.NoSuchMethodException: > org.apache.zookeeper.ClientCnxnSocketNetty.(){color} > {color:#de350b} at java.lang.Class.getConstructor0(Class.java:3082){color} > {color:#de350b} at > java.lang.Class.getDeclaredConstructor(Class.java:2178){color} > {color:#de350b} at > org.apache.zookeeper.ZooKeeper.getClientCnxnSocket(ZooKeeper.java:1848){color} > {color:#de350b} ... 10 more{color} > {color:#de350b}[2019-10-30 03:52:10,039] INFO shutting down > (kafka.server.KafkaServer){color} > {color:#de350b}[2019-10-30 03:52:10,046] INFO shut down completed > (kafka.server.KafkaServer){color} > {color:#de350b}[2019-10-30 03:52:10,046] ERROR Exiting Kafka. > (kafka.server.KafkaServerStartable){color} > {color:#de350b}[2019-10-30 03:52:10,048] INFO shutting down > (kafka.server.KafkaServer){color} > STEPS. > 1) I copied following zookeeper dependencies into kafka bin. > a) kafka 2.3.0 and zookeer 3.5.5 > "zookeeper-3.5.6.jar" "zookeeper-jute-3.5.6.jar" "netty*.jar" > "commons-cli-1.2.jar" > b) kafka 2.3.1 and zookeer 3.5.6 > "zookeeper-3.5.6.jar" "zookeeper-jute-3.5.6.jar" > "netty-buffer-4.1.42.Final.jar" "netty-buffer-4.1.42.Final.LICENSE.txt" > "netty-codec-4.1.42.Final.jar" "netty-codec-4.1.42.Final.LICENSE.txt" > "netty-common-4.1.42.Final.jar" "netty-common-4.1.42.Final.LICENSE.txt" > "netty-handler-4.1.42.Final.jar" "netty-handler-4.1.42.Final.LICENSE.txt" > "netty-resolver-4.1.42.Final.jar" "netty-resolver-4.1.42.Final.LICENSE.txt" > "netty-transport-4.1.42.Final.jar" "netty-transport-4.1.42.Final.LICENSE.txt" > "netty-transport-native-epoll-4.1.42.Final.jar" > "netty-transport-native-epoll-4.1.42.Final.LICENSE.txt" > "netty-transport-native-unix-common-4.1.42.Final.jar" > "netty-transport-native-unix-common-4.1.42.Final.LICENSE.txt" > "commons-cli-1.2.jar" > *2) Configurations:* > The *zookeeper* cluster looks good with > 1) configuration *zoo.conf*. > {color:#505f79}quorum.auth.server.loginContext=QuorumServer{color} > {color:#505f79}quorum.auth.learner.loginContext=QuorumLearner{color} > {color:#505f79}syncLimit=2{color} > {color:#505f79}tickTime=2000{color} > {color:#505f79}server.3=broker1\:2888\:3888{color} > {color:#505f79}server.2=broker2\:2888\:3888{color} > {color:#505f79}server.1=broker3\:2888\:3888{color} > {color:#505f79}authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider{color} > {color:#505f79}initLimit=10{color} > {color:#505f79}secureClientPort=2281{color} > {color:#505f79}quorum.auth.learnerRequireSasl=true{color} > {color:#505f79}quorum.auth.enableSasl=true{color} > {color:#505f79}quorum.auth.kerberos.servicePrincipal=servicename/_HOST{color} > {color:#505f79}quorum.cnxn.threads.size=20{color} > {color:#505f79}zookeeper.client.secure=true{color}