New submission from wabu:

using `p = create_subprocess_exec(..., stdout=subprocess.PIPE, limit=...)`, 
p.stdout has not transport set, so the underlying protocol is unable to pause 
the reading of the transport, resulting in high memory usage when slowly 
consuming input from p.stdout, even if the limit parameter is passed. 

A workaround is to set the transport manually after creating the subprocess:
`p.stdout.set_transport(p._transport.get_pipe_transport(1))`, but this should 
happen inside the create_subprocess call.

----------
components: asyncio
messages: 229763
nosy: gvanrossum, haypo, wabu, yselivanov
priority: normal
severity: normal
status: open
title: memory leak: no transport for pipes by create_subprocess_exec/shell
versions: Python 3.4

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue22685>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to