-
Notifications
You must be signed in to change notification settings - Fork 544
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
create_subprocess_exec stdin writer does not write everything #312
Comments
Would appreciate you submitting a PR with a functional test (marked as x-fail) to demonstrate the problem. |
done. actually I re-tested under linux, and found out a weird threshold of 219264 bytes |
tardyp
added a commit
to tardyp/uvloop
that referenced
this issue
Feb 12, 2020
tardyp
added a commit
to tardyp/uvloop
that referenced
this issue
Feb 12, 2020
fantix
added a commit
to fantix/uvloop
that referenced
this issue
May 9, 2020
* in order to detect peer close on O_WRONLY pipe_t * partially reverted d8fe153 * refs libuv/libuv#2058 * refs MagicStack#317 * fixes MagicStack#311, fixes MagicStack#312
fantix
pushed a commit
to fantix/uvloop
that referenced
this issue
May 9, 2020
fantix
pushed a commit
to fantix/uvloop
that referenced
this issue
May 9, 2020
fantix
added a commit
to fantix/uvloop
that referenced
this issue
May 13, 2020
* in order to detect peer close on O_WRONLY pipe_t * partially reverted d8fe153 * refs libuv/libuv#2058 * refs MagicStack#317 * fixes MagicStack#311, fixes MagicStack#312
fantix
pushed a commit
to fantix/uvloop
that referenced
this issue
May 13, 2020
fantix
added a commit
that referenced
this issue
May 14, 2020
* in order to detect peer close on O_WRONLY pipe_t * partially reverted d8fe153 * refs libuv/libuv#2058 * refs #317 * fixes #311, fixes #312
fantix
pushed a commit
that referenced
this issue
May 14, 2020
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Darwin, python 3.7.4
Versions
This problem was already detected on my prod on linux.
platform darwin -- Python 3.7.4, pytest-5.3.5, py-1.8.1, pluggy-0.13.1
Platform:
linux/darwin
Can you reproduce the bug with
PYTHONASYNCIODEBUG
in env?:yes
Does uvloop behave differently from vanilla asyncio? How?:
yes, test do not hang with pyloop.
When writing large amount of data in the stdin of a subprocess, we observe sometimes that the subprocess will hang trying to read from our app.
Trying to reproduce with a very small test, I find that, on macos, a limit of 8KiB.
Here is my test
I run it with :
When printing on the subprocess, I can see that the first 8191 bytes are seen by the subprocess, but the last one are never seen.
If I close the stdin (line commented in the test), it appears that it forces a buffer flush, and the test finishes.
The text was updated successfully, but these errors were encountered: