[
https://issues.apache.org/jira/browse/QPID-5588?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13916160#comment-13916160
]
ASF subversion and git services commented on QPID-5588:
-------------------------------------------------------
Commit 1573028 from [~kgiusti] in branch 'qpid/trunk'
[ https://svn.apache.org/r1573028 ]
QPID-5588: [python-client] use poll() instead of select() where available.
> Python client fails if socket fd > FD_SETSIZE
> ---------------------------------------------
>
> Key: QPID-5588
> URL: https://issues.apache.org/jira/browse/QPID-5588
> Project: Qpid
> Issue Type: Bug
> Components: Python Client
> Affects Versions: 0.26, 0.27
> Reporter: Ken Giusti
> Assignee: Ken Giusti
> Fix For: Future
>
>
> The python client uses select() to wait for socket activity. select() is
> used because it is available on most platforms. However, select() has a hard
> limit on the _value_ of an file descriptor. If a socket is created that has
> a file descriptor > the value of FD_SETSIZE, the following exception is
> thrown:
> Exception in thread Thread-1:
> Traceback (most recent call last):
> File "/usr/lib64/python2.4/threading.py", line 442, in __bootstrap
> self.run()
> File "/usr/lib64/python2.4/threading.py", line 422, in run
> self.__target(*self.__args, **self.__kwargs)
> File "/usr/lib/python2.4/site-packages/qpid/selector.py", line 119, in run
> rd, wr, ex = select(self.reading, self.writing, (), timeout)
> ValueError: filedescriptor out of range in select()
> Note well: this is caused by the _value_ of the fd, not the number of open
> fds. A process that has many files open, then attempts to create a qpid
> connection, could hit this problem.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]