anup at iamcool.net
Fri Oct 19 03:01:00 UTC 2007
Anup Shukla wrote:
> Hi All,
> We have been running 2 instances of Perlbal successfully for several
> However one of the instances has now suffered two crashes in a weeks time.
> The first crash was without any message in the logs.
> The second one (happened last night) has this in the logs:
> crash log: Negative length at
> /usr/lib/perl5/site_perl/5.8.5/Danga/Socket.pm line 1133
> What do i need to check for?
> Any help/pointers appreciated.
> Thank you.
Ha.. replying to my own mail ;-)
Now, i dont know much of Perl (as a matter of fact, not one bit)
But reading through Socket.pm
# if this is too high, perl quits(!!). reports on mailing lists
# don't seem to point to a universal answer. 5MB worked for some,
# crashed for others. 1MB works for more people. let's go with 1MB
# for now. :/
my $req_bytes = $bytes > 1048576 ? 1048576 : $bytes;
my $res = sysread($sock, $buf, $req_bytes, 0);
Is it that $bytes (and as a result) $req_bytes is having a value < 0 and
thats causing sysread() to get crazy?
If yes, can i simply make $req_bytes = 0 if $bytes < 0 ?
I dont know if what i think makes sense.
Just a speculation.
More information about the perlbal