Message263079
I suspect this bug does not affect Python 2. See my demo script wsgi-partial.py as evidence, which interrupts a 20 MB write with a signal.
Jason: If you look at Python 2’s file.write() API <https://docs.python.org/2/library/stdtypes.html#file.write>, perhaps that will convince you that it is easy for someone to write a write() method that has no return value.
Anyway, I think this bug is bigger than first thought. It affects most servers based on socketserver.StreamRequestHandler, not just the “wsgiref” one. In Python 3.5 I propose to patch the existing servers to avoid the possibility of truncated writes (patch forthcoming). In 3.6, I am thinking we should change StreamRequestHandler.wfile to prevent write() doing partial writes. |
|
Date |
User |
Action |
Args |
2016-04-09 10:52:18 | martin.panter | set | recipients:
+ martin.panter, pje, jmadden, Jonathan Kamens, marcjofre, Paolo Veglia |
2016-04-09 10:52:18 | martin.panter | set | messageid: <1460199138.14.0.452327147696.issue24291@psf.upfronthosting.co.za> |
2016-04-09 10:52:18 | martin.panter | link | issue24291 messages |
2016-04-09 10:52:17 | martin.panter | create | |
|