ZOOKEEPER-4956: Provide a HostProvider that uses DNS SRV record for dynamic server discovery#2320
Conversation
anmolnar
left a comment
There was a problem hiding this comment.
Where are the changes of StaticHostProvider?
zookeeper-server/src/main/java/org/apache/zookeeper/client/DnsSrvHostProvider.java
Outdated
Show resolved
Hide resolved
zookeeper-server/src/main/java/org/apache/zookeeper/client/DnsSrvHostProvider.java
Outdated
Show resolved
Hide resolved
zookeeper-server/src/main/java/org/apache/zookeeper/client/HostConnectionManager.java
Outdated
Show resolved
Hide resolved
zookeeper-server/src/main/java/org/apache/zookeeper/client/HostConnectionManager.java
Show resolved
Hide resolved
I thought it would be better to check in the updated However, I noticed that |
dc2bfe6 to
6e01933
Compare
|
Hi @anmolnar, thanks a lot for your feedback. I've responded to all the comments. Can you please take a look at the updated PR? Thanks. |
6e01933 to
0d6117b
Compare
anmolnar
left a comment
There was a problem hiding this comment.
Just a few more comments, otherwise looks good to me.
zookeeper-server/src/main/java/org/apache/zookeeper/client/HostProvider.java
Outdated
Show resolved
Hide resolved
zookeeper-server/src/main/java/org/apache/zookeeper/client/HostConnectionManager.java
Show resolved
Hide resolved
zookeeper-server/src/main/java/org/apache/zookeeper/client/ConnectionType.java
Outdated
Show resolved
Hide resolved
757b86d to
654c6c1
Compare
|
Please see my comments on the other pr #2321 |
Yes, working on merging #2321 into this one right now. |
c5449f8 to
1c5c292
Compare
1a54d12 to
92c1258
Compare
anmolnar
left a comment
There was a problem hiding this comment.
Overall lgtm. Just a few nitpicks.
zookeeper-server/src/main/java/org/apache/zookeeper/client/DnsSrvHostProvider.java
Outdated
Show resolved
Hide resolved
zookeeper-server/src/main/java/org/apache/zookeeper/client/DnsSrvHostProvider.java
Outdated
Show resolved
Hide resolved
zookeeper-server/src/main/java/org/apache/zookeeper/client/DnsSrvHostProvider.java
Outdated
Show resolved
Hide resolved
zookeeper-server/src/main/java/org/apache/zookeeper/client/DnsSrvHostProvider.java
Outdated
Show resolved
Hide resolved
zookeeper-server/src/main/java/org/apache/zookeeper/client/DnsSrvHostProvider.java
Outdated
Show resolved
Hide resolved
zookeeper-server/src/main/java/org/apache/zookeeper/client/DnsSrvHostProvider.java
Outdated
Show resolved
Hide resolved
zookeeper-server/src/main/java/org/apache/zookeeper/client/DnsSrvHostProvider.java
Show resolved
Hide resolved
zookeeper-server/src/test/java/org/apache/zookeeper/client/DnsSrvHostProviderTest.java
Outdated
Show resolved
Hide resolved
zookeeper-server/src/test/java/org/apache/zookeeper/client/DnsSrvHostProviderTest.java
Outdated
Show resolved
Hide resolved
zookeeper-server/src/test/java/org/apache/zookeeper/client/DnsSrvHostProviderTest.java
Outdated
Show resolved
Hide resolved
…ynamic server discovery Author: Li Wang <[email protected]>
92c1258 to
68d86cd
Compare
|
@anmolnar thanks for reviewing the updated PR. I have addressed all the comments. Would you mind taking a look at it again? Thanks. |
|
@anmolnar Thanks a lot for reviewing the PR and providing the feedback! |
The existing ZooKeeper client architecture relies on StaticHostProvider, which lacks auto service discovery capabilities and must wait for external mechanisms to push server list updates, either through manual configuration changes or reconfig notifications.
This PR provides a HostProvider implementation that performs dynamic service discovery based on DNS SRV record and also an automatic HostProvider selection based on connection string format. The following is a summary of the changes: