On Sat, Nov 01, 2003 at 09:56:26PM -0600, Alan Hastings wrote: > Here is some code that exhibits the hanging socket problem. It's three > scripts: a server and 2 clients, one that works (XML::Lite based) and one > that hangs (POE based). The POE client/server represents the client and > server side of a larger server process, which is serving as a XML RPC broker > of sorts (a few incoming requests initiating many outgoing requests, with > aggregation of results.) > > The fact that rpcclient.pl hangs and rpcclient2.pl does not may come down to > whether the client socket code closes the socket or expects the server to > close it first. The PoCoCl::HTTP code clearly expects the server to close > the connection; it ain't happening. If there's an opportunity to shut down > the socket once the POE::Component::RPCXML::Server->send_resp() I/O is > finished, perhaps that's the answer. I have a feeling it will be obvious to > someone... > > Suggestions welcome. Thanks for any help!
Alan subsequently contacted me in personal e-mail. I reviewed the public and private messages, and his test cases, and added a shutdown() call to POE::Component::Client::HTTP. This seems to have fixed his test case, but I'm waiting for confirmation that it solves the bigger problem before committing it and releasing a new Client::HTTP. In case you're wondering why I'm telling you this, it's just for closure on the public list and in the search engines. -- Rocco Caputo - [EMAIL PROTECTED] - http://poe.perl.org/
