Clifford Jansen created PROTON-2812:
---------------------------------------

             Summary: Epoll proactor blocks thread during DNS lookups in 
getaddrinfo
                 Key: PROTON-2812
                 URL: https://issues.apache.org/jira/browse/PROTON-2812
             Project: Qpid Proton
          Issue Type: Bug
          Components: proton-c
    Affects Versions: proton-c-0.39.0
            Reporter: Clifford Jansen
            Assignee: Clifford Jansen


The epoll proactor uses getaddrinfo() to resolve network addresses for inbound 
and outbound AMQP and raw connections.  These connect and listener calls are 
thread safe so may be called from any thread and the expectation is that they 
initiate the action without blocking.

Solutions could entail:

1) using a dedicated DNS thread pool that multiplexes N serialized (blocking) 
getaddrinfo calls over the pool (e.g. getaddrinfo_a or self managed like libuv)

2) use some custom library that scales DNS requests without blocking

3) write the simplest custom proactor library that does #2.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to