qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alan Conway (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DISPATCH-571) Driver spins when a listener accepts a socket while FDs are all in use
Date Thu, 01 Jun 2017 18:10:04 GMT

    [ https://issues.apache.org/jira/browse/DISPATCH-571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16033419#comment-16033419

Alan Conway commented on DISPATCH-571:

This can be solved without a time out if we handle the ENFILE/EMFILE errors properly in the
proactor (PROTON-1495). The router should reject connections as long as it has no FDs and
resume normal operation when some existing FDs are closed.

> Driver spins when a listener accepts a socket while FDs are all in use
> ----------------------------------------------------------------------
>                 Key: DISPATCH-571
>                 URL: https://issues.apache.org/jira/browse/DISPATCH-571
>             Project: Qpid Dispatch
>          Issue Type: Bug
>          Components: Container
>            Reporter: Ted Ross
>            Assignee: Alan Conway
>             Fix For: 1.0.0
> when operating as a server and using listeners, if the number of open FDs is equal to
the limit on FDs, accept will return an error and the driver will spin at 100% cpu until an
FD is freed up for the incoming connection.
> Suggested fix:
> If "accept" returns a "too many open files" error (ENFILE or EMFILE), the listening socket
should be taken out of the read-fds for a time (say one second) before retrying.
> If this is not practical to do in Proton, the driver should provide hooks for the encapsulating
application to use to provide this holdoff.

This message was sent by Atlassian JIRA

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

View raw message