[ https://issues.apache.org/jira/browse/ZOOKEEPER-2184?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15929563#comment-15929563 ]
ASF GitHub Bot commented on ZOOKEEPER-2184: ------------------------------------------- GitHub user geek101 opened a pull request: https://github.com/apache/zookeeper/pull/199 ZOOKEEPER-2184: Resolve address only on demand. Wrap hostname and port into a new ServerCfg class and fix all the places to use it instead of InetSocketAddress. This class can be used in the future to encapsulate other nice config information for example certificate fingerprint associated with the host etc. You can merge this pull request into a Git repository by running: $ git pull https://github.com/geek101/zookeeper branch-3.5-hostname-resolve-always Alternatively you can review and apply these changes as the patch at: https://github.com/apache/zookeeper/pull/199.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #199 ---- commit ec219a4f40fe46a9743ad13ff910f9be9f383f3c Author: Powell Molleti <powell...@yahoo.com> Date: 2017-03-17T07:59:23Z Resolve address only on demand. Wrap hostname and port into a new ServerCfg class and fix all the places to use it instead of InetSocketAddress. This class can be used in the future to encapsulate other nice config information for example certificate fingerprint associated with the host etc. ---- > Zookeeper Client should re-resolve hosts when connection attempts fail > ---------------------------------------------------------------------- > > Key: ZOOKEEPER-2184 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2184 > Project: ZooKeeper > Issue Type: Bug > Components: java client > Affects Versions: 3.4.6, 3.5.0 > Environment: Ubuntu 14.04 host, Docker containers for Zookeeper & > Kafka > Reporter: Robert P. Thille > Assignee: Flavio Junqueira > Labels: easyfix, patch > Fix For: 3.5.4, 3.6.0, 3.4.11 > > Attachments: ZOOKEEPER-2184.patch > > > Testing in a Docker environment with a single Kafka instance using a single > Zookeeper instance. Restarting the Zookeeper container will cause it to > receive a new IP address. Kafka will never be able to reconnect to Zookeeper > and will hang indefinitely. Updating DNS or /etc/hosts with the new IP > address will not help the client to reconnect as the > zookeeper/client/StaticHostProvider resolves the connection string hosts at > creation time and never re-resolves. > A solution would be for the client to notice that connection attempts fail > and attempt to re-resolve the hostnames in the connectString. -- This message was sent by Atlassian JIRA (v6.3.15#6346)