You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2020/09/29 11:49:02 UTC

[jira] [Commented] (GEODE-8548) ACE_Inet_Addr takes too long in reverse DNS resolution

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

ASF GitHub Bot commented on GEODE-8548:
---------------------------------------

gaussianrecurrence opened a new pull request #659:
URL: https://github.com/apache/geode-native/pull/659


    - Calling get_host_name() in TcpConn::connect involves a system call that
      might take several seconds to complete.
    - So endpoint is stored instead upon TcpConn construction and used later
      instead of making the system call.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


> ACE_Inet_Addr takes too long in reverse DNS resolution
> ------------------------------------------------------
>
>                 Key: GEODE-8548
>                 URL: https://issues.apache.org/jira/browse/GEODE-8548
>             Project: Geode
>          Issue Type: Bug
>          Components: native client
>    Affects Versions: 1.11.0, 1.12.0, 1.13.0
>            Reporter: Mario Salazar de Torres
>            Assignee: Mario Salazar de Torres
>            Priority: Major
>              Labels: connections
>
> Whenever TcpConn::connect is called, a system call to *get_host_name* is made in order to obtain reverse resolution for the connection address, right here:
> {code:cpp}
> void TcpConn::connect() {
>   using apache::geode::internal::chrono::duration::to_string;
>   ACE_OS::signal(SIGPIPE, SIG_IGN);  // Ignore broken pipe
>   LOGFINER(std::string("Connecting plain socket stream to ") +
>            inetAddress_.get_host_name() + ":" +
>            std::to_string(inetAddress_.get_port_number()) + " waiting " +
>            to_string(timeout_));
> ยทยทยท
> {code}
> get_host_name executes getnameinfo underlying and the thing is that depending on your system configuration in the case of the address not having a reverse resolution entry it might take a long period. In my case it takes 10 seconds.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)