[
https://issues.apache.org/jira/browse/THRIFT-5449?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jens Geyer resolved THRIFT-5449.
--------------------------------
Fix Version/s: 0.17.0
Assignee: Yiyang Zhou
Resolution: Fixed
> Use select.poll instead of select.select in Python TNonblockingServer if
> available
> ----------------------------------------------------------------------------------
>
> Key: THRIFT-5449
> URL: https://issues.apache.org/jira/browse/THRIFT-5449
> Project: Thrift
> Issue Type: Improvement
> Components: Python - Library
> Reporter: Yiyang Zhou
> Assignee: Yiyang Zhou
> Priority: Major
> Labels: Python, TNonblockingServer, connection
> Fix For: 0.17.0
>
> Original Estimate: 48h
> Time Spent: 2h 10m
> Remaining Estimate: 45h 50m
>
> Currently Python TNonblockingServer uses select.select to monitor the IO of
> all existing connections. The value of file descriptors monitored by select()
> is limited to be lower than _FD_SETSIZE_ (1024). Any file desciptor higher
> than 1024, when passed into select.select, will trigger the "fd out of range"
> error.
> Switching to select.poll can solve this problem. However, as noted in the
> official documentation, select.poll is not supported in all operating system.
> We should also check whether the current system has poll in the select
> module, and use poll if it's available.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)