You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@zookeeper.apache.org by "Damien Diederen (Jira)" <ji...@apache.org> on 2019/08/29 15:51:00 UTC
[jira] [Commented] (ZOOKEEPER-1998) C library calls getaddrinfo
unconditionally from zookeeper_interest
[ https://issues.apache.org/jira/browse/ZOOKEEPER-1998?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16918728#comment-16918728 ]
Damien Diederen commented on ZOOKEEPER-1998:
--------------------------------------------
I have recently pushed a GitHub "pull request" which addresses this:
https://github.com/apache/zookeeper/pull/1068
It passes all tests and (includes some new ones). Comments and/or suggestions are welcome.
> C library calls getaddrinfo unconditionally from zookeeper_interest
> -------------------------------------------------------------------
>
> Key: ZOOKEEPER-1998
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1998
> Project: ZooKeeper
> Issue Type: Bug
> Components: c client
> Affects Versions: 3.5.0
> Reporter: Raul Gutierrez Segales
> Assignee: Raul Gutierrez Segales
> Priority: Major
> Labels: pull-request-available
> Fix For: 3.6.0
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> (commented this on ZOOKEEPER-338)
> I've just noticed that we call getaddrinfo from zookeeper_interest... on every call. So from zookeeper_interest we always call update_addrs:
> https://github.com/apache/zookeeper/blob/trunk/src/c/src/zookeeper.c#L2082
> which in turns unconditionally calls resolve_hosts:
> https://github.com/apache/zookeeper/blob/trunk/src/c/src/zookeeper.c#L787
> which does the unconditional calls to getaddrinfo:
> https://github.com/apache/zookeeper/blob/trunk/src/c/src/zookeeper.c#L648
> We should fix this since it'll make 3.5.0 slower for people relying on DNS. I think this is happened as part of ZOOKEEPER-107 in which the list of servers can be updated.
> cc: [~shralex], [~phunt], [~fpj]
--
This message was sent by Atlassian Jira
(v8.3.2#803003)