You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Alan Conway (JIRA)" <ji...@apache.org> on 2017/06/16 14:29:00 UTC
[jira] [Issue Comment Deleted] (PROTON-1499) c-fdlimit-test fails
for epoll proactor
[ https://issues.apache.org/jira/browse/PROTON-1499?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alan Conway updated PROTON-1499:
--------------------------------
Comment: was deleted
(was: Theory: the epoll proactor creates a socket and a timer FD per connection. Possible your tests are running out of FDs on one and mine on the other - can't think why though. I've tried fiddling with odd/even numbered limits and my tests still pass. PROTON-1504 changes the behavior here - there is special treatment for ENFILE/EMFILE only at the accept(), and we suppress the PN_LISTENER_ACCEPT event in that case. Failing to create the timer (including ENFILE/EMFILE) is now treated as a normal connection failure and not given special treatmet as part of pn_proactor_accept().)
> c-fdlimit-test fails for epoll proactor
> ---------------------------------------
>
> Key: PROTON-1499
> URL: https://issues.apache.org/jira/browse/PROTON-1499
> Project: Qpid Proton
> Issue Type: Bug
> Components: proton-c
> Affects Versions: 0.18.0
> Environment: fedora 25
> Reporter: Andrew Stitcher
> Assignee: Alan Conway
> Fix For: 0.18.0
>
>
> The c-fdlmit-test consistently fails when using the epoll proactor. The libuv proactor does not fail.
> {noformat}
> 26: Test command: /usr/bin/python "/home/andrew/Work/proton/src/proton-c/src/tests/fdlimit.py"
> 26: Environment variables:
> 26: PATH=/home/andrew/Work/proton/bld-c++11/proton-c/src/tests:/home/andrew/Work/proton/bld-c++11/examples/c/proactor:/home/andrew/.opam/4.03.0/bin:/home/andrew/bin:/home/andrew/.local/bin:/usr/lib64/ccache:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/home/andrew/.golang/bin
> 26: PYTHONPATH=/home/andrew/Work/proton/src/tools/py
> 26: Test timeout computed to be: 1500
> 26: E
> 26: ======================================================================
> 26: ERROR: test_fd_limit_broker (__main__.FdLimitTest)
> 26: Check behaviour when running out of file descriptors on accept
> 26: ----------------------------------------------------------------------
> 26: Traceback (most recent call last):
> 26: File "/home/andrew/Work/proton/src/proton-c/src/tests/fdlimit.py", line 82, in test_fd_limit_broker
> 26: self.assertIn("10 messages received", self.proc(["receive", "", b.port]).wait_exit())
> 26: File "/home/andrew/Work/proton/src/proton-c/src/tests/fdlimit.py", line 39, in __exit__
> 26: raise ProcError(b, "broker crash")
> 26: ProcError: ['prlimit', '-n256', 'broker', '', '44785'] broker crash, code=-6
> 26: vvvvvvvvvvvvvvvv
> 26: listening
> 26: PN_TRANSPORT_CLOSED: proton:io: Too many open files - accepting from :5672
> 26: broker: /home/andrew/Work/proton/src/proton-c/src/core/transport.c:2950: pn_transport_pending: Assertion `transport' failed.
> 26: ^^^^^^^^^^^^^^^^
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org