Try replace request.body = copystream_progress(request) ### stores request body with
try: request.body = copystream_progress(request) ### stores request body except IOError: raise HTTP(400,"Bad Request - HTTP body is incomplete") in main.py. Does the problem goes away? I am afraid any response we generate will propagator to the web server and it will log some error on failure to respond to the client. On Monday, 16 July 2012 21:28:14 UTC-5, Bruce Wade wrote: > > I personally think if we are just going to leave it as it, then we should > not have it create an error ticket as I have had plenty of tickets created > by this. > > On Mon, Jul 16, 2012 at 7:13 PM, Massimo Di Pierro < > massimo.dipie...@gmail.com> wrote: > >> The more I think about this the more I am convinced this is not of >> concern. >> >> It is very well possible that a slow client sends you the header of a >> request, then closes the connection before finishing (perhaps the user >> killed the page, or stopped the browser while doing an upload or something >> slow). >> >> At some point web2py fails because of this and apache logs it. Where >> web2py fails depends on the exact timing but it likely to fail while >> copying the input stream. Which is the error you get. >> >> I think it correct to log these events. >> >> We could catch this specific error and have a more descriptive error but >> - while this is the place which is the most likely to fail - the failure >> could be somewhere else and we would not be catching the same error. >> >> I do not think this should be changed and I do not think this should be a >> concern. It tells you some uses have a slow connection. >> >> What do others think? >> >> >> On Monday, July 16, 2012 7:12:16 PM UTC-5, Brian M wrote: >>> >>> I'm on Version 1.99.4 (2011-12-22 11:20:45) stable. Yeah it is a bit >>> old - at this point waiting for 2.0 stable to come out. >>> >>> On Monday, July 16, 2012 9:58:53 AM UTC-5, Massimo Di Pierro wrote: >>>> >>>> Which web2py version? The error is from copying the request body into a >>>> tmp object in web2py. Looks like the request declares a size in the header >>>> but it is shorter (truncated). >>>> >>>> >>>> >>>> On Friday, 13 July 2012 16:27:51 UTC-5, Brian M wrote: >>>>> >>>>> I'm having ongoing problems with IOErrors from one of my web2py apps >>>>> deployed on Windows with Apache & mod_wsgi. Looks to me like the error >>>>> maybe happening at a lower level before it even gets to my app code? >>>>> >>>>> Traceback (most recent call last): >>>>> File "C:\\dashboard\\web2py\\gluon\**\main.py", line 447, in wsgibase >>>>> parse_get_post_vars(request, environ) >>>>> File "C:\\dashboard\\web2py\\gluon\**\main.py", line 275, in >>>>> parse_get_post_vars >>>>> request.body = copystream_progress(request) ### stores request body >>>>> File "C:\\dashboard\\web2py\\gluon\**\main.py", line 143, in >>>>> copystream_progress >>>>> copystream(source, dest, size, chunk_size) >>>>> File "C:\\dashboard\\web2py\\gluon\**\fileutils.py", line 374, in >>>>> copystream >>>>> data = src.read(size) >>>>> IOError: request data read error >>>>> >>>> -- >> >> >> >> > > > > -- > -- > Regards, > Bruce Wade > http://ca.linkedin.com/in/brucelwade > http://www.wadecybertech.com > http://www.fittraineronline.com - Fitness Personal Trainers Online > http://www.warplydesigned.com > > --