qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF subversion and git services (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PROTON-1495) c proactor handling file descriptor shortage
Date Fri, 09 Jun 2017 01:26:18 GMT

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

ASF subversion and git services commented on PROTON-1495:
---------------------------------------------------------

Commit 087b94faef6f0bc3fc2eac50ba0d2c2b03d82fbd in qpid-proton's branch refs/heads/go1 from
[~aconway]
[ https://git-wip-us.apache.org/repos/asf?p=qpid-proton.git;h=087b94f ]

PROTON-1495: c epoll proactor handling file descriptor shortage

Previously if the proactor ran out of file descriptors during pn_listener_accept the
listener closed, and could not accept further connections even when FDs became
free.

Now the affected listener(s) are put into "overflow" mode and dispabled until
the proactor closes an FD, at which point it re-enables overflowing listeners.

The error is reported as a PN_TRANSPORT_ERROR on the connection that the
application attempted to use for pn_listener_accept() Clients will experience a
delay and/or be disconnected while the listener is in overflow mode.

NOTE: we should also have a timeout to re-try overflow listeners even if the
proactor has not closed any file descriptors, in case other parts of the
application have. This is not yet done.


> c proactor handling file descriptor shortage
> --------------------------------------------
>
>                 Key: PROTON-1495
>                 URL: https://issues.apache.org/jira/browse/PROTON-1495
>             Project: Qpid Proton
>          Issue Type: Bug
>            Reporter: Alan Conway
>            Assignee: Alan Conway
>
> The c proactor needs to handle error conditoins 
> ENFILE 23 Too many open files in system
> EMFILE 24 Too many open files
> Failing to create connection-related FDs (the socket or related FDs like timers) because
of one of these errors should only close that connection (with a useful error condition).
If a proactor-based process runs out of FDs it should reject new incoming connections and
refuse to create outgoing ones but should resume normal function when some FDs are closed.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

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


Mime
View raw message