[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-2107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289196#comment-14289196
 ] 

Hadoop QA commented on ZOOKEEPER-2107:
--------------------------------------

+1 overall.  Here are the results of testing the latest attachment 
  
http://issues.apache.org/jira/secure/attachment/12694136/enable-custom-hostprovider_in_zookeeper-client3.patch
  against trunk revision 1646992.

    +1 @author.  The patch does not contain any @author tags.

    +1 tests included.  The patch appears to include 3 new or modified tests.

    +1 javadoc.  The javadoc tool did not generate any warning messages.

    +1 javac.  The applied patch does not increase the total number of javac 
compiler warnings.

    +1 findbugs.  The patch does not introduce any new Findbugs (version 2.0.3) 
warnings.

    +1 release audit.  The applied patch does not increase the total number of 
release audit warnings.

    +1 core tests.  The patch passed core unit tests.

    +1 contrib tests.  The patch passed contrib unit tests.

Test results: 
https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/2486//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/2486//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
Console output: 
https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/2486//console

This message is automatically generated.

> zookeeper client should support custom HostProviders
> ----------------------------------------------------
>
>                 Key: ZOOKEEPER-2107
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2107
>             Project: ZooKeeper
>          Issue Type: Improvement
>          Components: java client
>    Affects Versions: 3.5.0
>            Reporter: Robert Kamphuis
>             Fix For: 3.5.1
>
>         Attachments: enable-custom-hostprovider_in_zookeeper-client3.patch
>
>
> The zookeeper client currently contains a StaticHostProvider and no means to 
> replace it with your own implementation of the existing HostProvider 
> interface. It would be great if the zookeeper client would enable you to 
> create an instance with your own implementation of the HostProvider 
> interface. 
> We have been testing this change with our implementation of HostProvider 
> which does the name to ip lookup at the time of finding the next() server to 
> connect to. In our AWS based deployments, this enables that applications can 
> actually connect to swapped out zookeeper-servers which typically get a new 
> ip address. With the current StaticHostProvider in practice you will need to 
> restart the application to see the replaced zookeeper as the application 
> continues to try to connect to the old no longer existing IP address. 
> With this little change plus a straightforward implementation of the 
> HostProvider interface (our LateResolvingHostProvider), we can replace the 
> zookeeper servers one at a time, re-assigning the elastic ips we use for the 
> zookeeper servers, and have the application servers re-connect to the 
> zookeeper cluster including the replaced ones without any downtime and 
> without having to rely on the elastic ips for client to zookeeper-server 
> connections. The reason for not using elastic-ips in the connect-strings but 
> use the names which map to the (changing) private ips is to be able to rely 
> on security-groups to control access. 
> While this seems very specific for AWS, this anyway seems a generic 
> improvement for other deployments where the mapping from server name to IP 
> address is not static. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to