[issue3551] multiprocessing.Pipe terminates with ERROR_NO_SYSTEM_RESOURCES if large data is sent (win2000)

John Ehresman report at bugs.python.org
Wed Apr 1 21:45:17 CEST 2009


John Ehresman <jpe at wingware.com> added the comment:

Looking into this a bit more and reading the documentation (sorry, I 
picked this up because I know something about win32 and not because I 
know multiprocessing), it looks like a connection is supposed to be 
message oriented and not byte oriented so that a recv() should return 
what is sent in a single send().  This is like how Queue works in the 
threading case.  Note that I think the method signature when using the 
dummy.connection differ when using pipe_connection and that the two 
differ in what happens when several send_bytes's occur before a recv_bytes

I'm currently leaning toward essentially leaving the current behavior 
(and documenting it) though maybe with a better exception and 
documenting that large byte arrays can't be sent through the pipe. 
What's still an issue is if a pickle ends up being too large.

----------
title: multiprocessing.Pipe terminates with	ERROR_NO_SYSTEM_RESOURCES if large data is sent (win2000) -> multiprocessing.Pipe terminates	with	ERROR_NO_SYSTEM_RESOURCES if large data is sent (win2000)

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue3551>
_______________________________________


More information about the Python-bugs-list mailing list