There is a known issue with the new "tcp fusion" feature in Solaris 10, which takes any internally bound traffic (ie, client and server are the same machine) and strips out the TCP protocol to reduce overhead. You can get more information from Sunsolve document ID 102576.
The work-around is to disable tcp fusion in the /etc/system file (and reboot) like so: set ip:do_tcp_fusion = 0x0 The issue is apparently fixed in kernel patches 118833-24 or later. Just FYI: The error messages from libwww seemed to vary, depending on what version I used. Any 500-type error encountered (for no apparent reason) on Solaris 10 - where client and server are local - may be a symptom of this bug. thanks -Chris On Fri, 2006-10-20 at 17:36 -0500, Chris Boyce wrote: > Hello... > > We have been using LWP::UserAgent for about four years (to power a web > site monitoring script), without any problems. The script runs directly > on each web server, querying itself. However, we have just started > using Solaris 10 for the first time, and suddenly our monitoring script > is getting this error at random times: > > 500 Server closed connection without sending any data back > > We are using Solaris 10, SPARC, and the following modules as required by > our lwp script: > > Time-HiRes-1.74 > URI-1.35 > HTML-Parser-3.45 > libnet-1.19 > libwww-perl-5.803 > (we've tried both perl 5.8.7 and 5.8.8) > > The code that makes the request looks like this: > > > # Run the request... > $http_response = $agent->request($request); > > $content = $http_response->content; > $status_line = $http_response->status_line; > > > Our Use section is: > > use LWP::UserAgent; > use HTTP::Cookies; > use HTTP::Headers; > use HTTP::Request; > use HTTP::Response; > use Net::SMTP; > use Getopt::Long; > use Time::Local; > use Time::HiRes 'time','sleep'; > > > I have tried using the same script on another machine, and direct > requests to the failing machine's web server. This works fine. All > other servers are Solaris 8 or 9. This machine is running 10. Can > anyone think of a reason why LWP would be receiving an empty response > when running on our Solaris 10 server? > > Your ideas are very much appreciated. As I said, we've never had a > problem with LWP (or this script) in the 4 years we've used it on > Solaris 8 and 9. > > thanks > > -Chris >