From: Dean M. B. <mik...@gm...> - 2008-09-08 05:29:02
|
Hi Diyve, On Sun, Sep 7, 2008 at 2:47 AM, Divye Kapoor <div...@gm...> wrote: > Hi Dean, > > On Thu, Aug 7, 2008 at 4:00 PM, Dean Michael C. Berris > <dmb...@fr...> wrote: >> >> <snip> >> >> Now though the problem >> you reported earlier (causing the HTTP client to be unusable offline) >> now at least throws a boost::system::system_error exception instead of >> consumes 100% CPU load. > > I've found another case where the http::client is causing resource leaks and > mammoth CPU loads. It occurs when you try to access a CGI script that has > failed to execute. > > A way to reproduce this is to simply use the version of requestinfo.py > before revision 77 (use revision 65) and perform a default POST request on > it. The cgi script fails with an error but the http::client fails to respond > and eats up system resources (seen on Vista/MSVC8). > > I think its a sign of a larger problem with the way we are using getline > calls in http::client. But I'm not sure. Can anyone shed some light on this? > Hmmm... I don't do getline() anymore, except from getting the headers, which should throw if the server has already closed the connection (connection reset). Can you write something that will induce this behavior without having to revert the version of requestinfo.py? Thanks for reporting this. Looking forward to the test. ;-) -- Dean Michael C. Berris Software Engineer, Friendster, Inc. |