-
Notifications
You must be signed in to change notification settings - Fork 5.5k
ValueError: filedescriptor out of range in select() #68136
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: 3007.x
Are you sure you want to change the base?
ValueError: filedescriptor out of range in select() #68136
Conversation
Hi there! Welcome to the Salt Community! Thank you for making your first contribution. We have a lengthy process for issues and PRs. Someone from the Core Team will follow up as soon as possible. In the meantime, here’s some information that may help as you continue your Salt journey. There are lots of ways to get involved in our community. Every month, there are around a dozen opportunities to meet with other contributors and the Salt Core team and collaborate in real time. The best way to keep track is by subscribing to the Salt Community Events Calendar. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we get a changelog and a test for this change?
5ba7e58
to
3bf52b0
Compare
What does this PR do?
This PR replaces the use of
select.select()
in therecv()
method with the higher-level selectors API (selectors.DefaultSelector
), eliminating the fixedFD_SETSIZE
limit. Specifically, whentimeout == 0
, it now:Registers the socket for read events on a
DefaultSelector
Calls
selector.select(timeout=0)
instead ofselect.select([...], [], [], 0)
Processes any ready file descriptors directly from the selector results
By using selectors, the code automatically leverages the best available backend (epoll, kqueue, poll, etc.) and lifts the file-descriptor range restriction, preventing the “filedescriptor out of range in select()” errors on systems with high FD numbers.
What issues does this PR fix or reference?
#65878
#63404
Merge requirements satisfied?
[NOTICE] Bug fixes or features added to Salt require tests.
Commits signed with GPG?
Yes/No