You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Andrew Stitcher (Jira)" <ji...@apache.org> on 2026/03/13 19:23:00 UTC

[jira] [Assigned] (PROTON-2812) Epoll proactor blocks thread during DNS lookups in getaddrinfo

     [ https://issues.apache.org/jira/browse/PROTON-2812?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Stitcher reassigned PROTON-2812:
---------------------------------------

    Assignee: Andrew Stitcher  (was: Clifford Jansen)

> 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: Andrew Stitcher
>            Priority: Major
>         Attachments: mitigate01.diff
>
>
> 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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org