[issue14872] subprocess is not safe from deadlocks

2012-05-22 Thread Ross Lagerwall
Ross Lagerwall added the comment: See also issue1260171. Closing as a duplicate of that. -- resolution: -> duplicate stage: -> committed/rejected status: open -> closed superseder: -> subprocess: more general (non-buffering) communication type: -> enhancement _

[issue14872] subprocess is not safe from deadlocks

2012-05-21 Thread anatoly techtonik
anatoly techtonik added the comment: The problem with memory is more actual for machines with SSD where swap is usually turned off and /tmp files are located on memory disk. Hitting memory limit often means hard reset. My process is pretty generic that uses all streams, and I don't know how t

[issue14872] subprocess is not safe from deadlocks

2012-05-21 Thread Ross Lagerwall
Ross Lagerwall added the comment: Well if you're *certain* that the process is only using one stream, then you can just use read/write on that stream. If not, it probably means you have to use either threads or select/poll. This is a known issue with subprocess; there are a few proposals on t

[issue14872] subprocess is not safe from deadlocks

2012-05-21 Thread Daniel Swanson
Daniel Swanson added the comment: what sort of machine has infinite memory? -- nosy: +weirdink13 ___ Python tracker ___ ___ Python-bu

[issue14872] subprocess is not safe from deadlocks

2012-05-21 Thread Chris Rebert
Changes by Chris Rebert : -- nosy: +cvrebert ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python

[issue14872] subprocess is not safe from deadlocks

2012-05-21 Thread Richard Oudkerk
Richard Oudkerk added the comment: I think the note for communicate() just means that you might get MemoryError (or some other exception) if the output is too big. But I agree it is ambiguous. communicate() uses select() on Unix and threads on Windows, so deadlocks should not be possible.

[issue14872] subprocess is not safe from deadlocks

2012-05-21 Thread anatoly techtonik
New submission from anatoly techtonik : There is no way to write a program in Python capable to process large/unlimited output coming from a subprocess stream without deadlocks. http://docs.python.org/library/subprocess.html#subprocess.Popen.communicate "Note The data read is buffered in me