> The issue is caused by having a superfluous > carriage return being sent in the HTTP request
I've reproduced the problem using ICS components, the issue relates to the THttpConnectionState mechanism which was changed a few years ago by Bjornar Nielsen to improve pipelined requests, where a new command is sent before the old one is finished. The extra blank line is treated as a new request and causes lots of internal variables to be cleared which stops the current request completing properly. This also explains some blank logging lines I sometimes see in my web server logs, because the method and path are cleared before the request completes and is logged, below server log lines before and after the fix, showing 64K sent before and 20M after. 2012-07-11 16:56:26 WebAppTelecom PC19 192.168.1.119 - 80 - pc19 HTTP/1.0 0 65693 0 0 2012-07-11 20:02:51 WebAppTelecom PC19 192.168.1.119 GET /testing/speed20meg.zip - 80 - pc19 HTTP/1.0 Mozilla/4.0+(compatible;+ICS) telecom.magenta 200 20450787 394 172 I've fixed my local copy of ICS V8, which version are you using? My only concern is whether we are properly supporting pipelining. I don't believe pipelining works properly at the moment, but have no easy way to test it. To support pipelining, I think more changes are needed to prevent the new commands being accepted while the old request is being processed, but this is more complex than my current fix and needs a means to send pipelined commands. Does anyone know an HTTP client that uses pipelining? Angus -- To unsubscribe or change your settings for TWSocket mailing list please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be
