Ticket #2790 defect assigned
UDP Transport write() raises socket.error EWOULDBLOCK
|Reported by:||Peaker||Owned by:||glyph|
I am running Twisted 2.5 on Windows XP.
This is my traceback:
File "twisted\internet\udp.py", line 169, in write File "twisted\internet\udp.py", line 156, in write socket.error: (10035, 'The socket operation could not complete without blocking')
>>> errno.errorcode 'WSAEWOULDBLOCK'
I believe it occurs because the socket buffer is full. It began happening when I started sending many datagrams on the UDP socket at the same time (I believed it would queue them).
Twisted transports queue their writes in general, so it would make sense to either queue the data, lose it (this would be "right" as UDP does not guarantee arrival, but quite nasty), or at least document the raised error in that transport.