Skip Menu |
Report information
Id: 1042
Status: resolved
Priority: 0/
Queue: perl5

Owner: Nobody
Requestors: anthonyu [at] infamous.killa.net
Cc:
AdminCc:

Operating System: Linux
PatchStatus: (no value)
Severity: medium
Type: core
Perl Version: (no value)
Fixed In: (no value)



From: anthonyu [...] infamous.killa.net
Date: Mon, 26 Jul 1999 18:43:22 -0700
To: perlbug [...] perl.com
Subject: possible memory leak in Socket or gethostbyaddr()?
Cc: anthonyu-pb [...] killa.net
Download (untitled) / with headers
text/plain 3.8k
----------------------------------------------------------------- [Please enter your report here] (Redhat appears to have not included perlbug in their 6.0 distribution, so I am using an older perlbug from a distribution I built myself. This is, however, running via the perl(1) included with redhat 6.0, which is the one I am noticing the problem with.) I had been running a script I wrote to resolve the PTRs of several /16 networks, when I heard significant swapping about halfway through the list. I checked vmstat: # vmstat 5 3 procs memory swap io system cpu r b w swpd free buff cache si so bi bo in cs us sy id 0 0 0 27592 17912 10204 18560 0 0 3 3 72 53 2 0 98 0 0 0 27592 17876 10204 18572 0 0 2 1 123 59 0 0 100 1 0 0 27592 17872 10204 18572 0 0 0 4 124 55 0 0 99 Then top: PID USER PRI NI SIZE RSS SHARE STAT LIB %CPU %MEM TIME COMMAND 850 root 6 0 82204 59M 404 S 0 0.2 47.2 3:49 ns.pl Here is the script: *** #!/usr/bin/perl -w use Socket; while (<>) { my ($iaddr, $hname); $| = 3.14; chomp; unless ($iaddr = inet_aton("$_")) { print STDERR "Bad input: $_\n"; next; } unless ($hname = gethostbyaddr($iaddr, AF_INET)) { print STDERR "No ptr for $_\n"; next; } print $hname, "\n"; } *** The ouput was then redirected to a file. The file of IPs being read is only 17M , and a running perl is usually less than 3M on this box. This is pretty extreme use of perl, so I don't expect a high priority to be placed on this report; however, the script will most likely be running for another day or so, so if you would like any more info about the running perl, please let me know. Thanks, -- Au PS: named crashed after expiring ~22000 rr from it's cache while I was writing this report, so perl isnt the only thing unprepared for this weird situation... [Please do not change anything below this line] ----------------------------------------------------------------- --- This perlbug was built using Perl 5.00502 - Mon Nov 30 03:25:42 PST 1998 It is being executed now by Perl 5.00503 - Tue Apr 6 23:33:05 EDT 1999. Site configuration information for perl 5.00503: Configured by root at Tue Apr 6 23:33:05 EDT 1999. Summary of my perl5 (5.0 patchlevel 5 subversion 3) configuration: Platform: osname=linux, osvers=2.2.1-ac1, archname=i386-linux uname='linux porky.devel.redhat.com 2.2.1-ac1 #1 smp mon feb 1 17:44:44 est 1999 i686 unknown ' hint=recommended, useposix=true, d_sigaction=define usethreads=undef useperlio=undef d_sfio=undef Compiler: cc='cc', optimize='-O2', gccversion=egcs-2.91.66 19990314/Linux (egcs-1.1.2 release) cppflags='-Dbool=char -DHAS_BOOL -I/usr/local/include' ccflags ='-Dbool=char -DHAS_BOOL -I/usr/local/include' stdchar='char', d_stdstdio=undef, usevfork=false intsize=4, longsize=4, ptrsize=4, doublesize=8 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 alignbytes=4, usemymalloc=n, prototype=define Linker and Libraries: ld='cc', ldflags =' -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lnsl -lndbm -lgdbm -ldb -ldl -lm -lc -lposix -lcrypt libc=, so=so, useshrplib=false, libperl=libperl.a Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib' Locally applied patches: --- @INC for perl 5.00503: /usr/lib/perl5/5.00503/i386-linux /usr/lib/perl5/5.00503 /usr/lib/perl5/site_perl/5.005/i386-linux /usr/lib/perl5/site_perl/5.005 . --- Environment for perl 5.00503: HOME=/home/anthonyu LANG (unset) LD_LIBRARY_PATH (unset) LOGDIR (unset) PATH=/bin:/usr/bin:/usr/local/bin:/usr/bin/X11:/usr/X11R6/bin PERL_BADLANG (unset) SHELL=/bin/bash
This seems to be fixed in perl 5.6.0


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

For issues related to this RT instance (aka "perlbug"), please contact perlbug-admin at perl.org