-
-
Notifications
You must be signed in to change notification settings - Fork 33.6k
[3.14] gh-119452: Block until data is read #142176
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
Conversation
|
!buildbot AMD64 Windows11 Non-Debug |
|
🤖 New build scheduled with the buildbot fleet by @hugovk for commit 56a1e65 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F142176%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
| cursize = 0 | ||
| data = self.rfile.read(min(nbytes, _MIN_READ_BUF_SIZE)) | ||
| while (len(data) < nbytes and len(data) != cursize and | ||
| select.select([self.rfile._sock], [], [], 0)[0]): |
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.
According to the current docs this should be omitted.
It might be better to document what None does: #142177
|
Windows builds are timing out on GitHub Actions: https://github.com/python/cpython/actions/runs/19851448458/job/56879004094?pr=142176 |
This reads/writes data as available, making the CGI application responsible for managing any timeouts when receiving data from clients. Data is read in chunks of bounded size, and passed on immediately (except stderr, which is combined into a single message as before). This does need 3 threads. (As does process.communicate.)
Possible fix for #119455 (comment), see also #119455 (review).