STINNER Victor added the comment:

Hum, since long time ago, Python has issues with partial write. It's hard to 
guess if a write will always write all data, store the data on partial write, 
or simply ignore remaining data on partial write.

I recall a "write1" function which was well defined: limited to 1 syscall, 
don't try (or maybe only on the very specific case of EINTR). But I'm not sure 
that it still exists in the io module of Python 3.

asyncio has also issues with the definition of "partial write" in its API.

You propose to fix the issue in socketserver.

socket.makefile(bufsize=0).write() uses send() and so use partial write. Are 
you sure that users are prepared for that? Maybe SocketIO must be modified to 
use sendall() when bufsize=0?

----------
nosy: +haypo

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

Reply via email to