httpd-apreq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Markus Wichitill <ma...@gmx.de>
Subject Re: Massive leak in Apache2::Upload?
Date Wed, 18 May 2005 18:04:29 GMT
Joe Schaefer wrote:
>>>>...the size of the receiving httpd process grows by about 260MB after
>>>>handler() returns, and stays that big.
>>>
>>>Hmm, the brigade_limit directive must not be kicking in correctly.
>>>First, see if this helps any:
>>>
>>>      my $r = Apache2::Request->new(shift, brigade_limit => 100_000);
>>
>>It doesn't seem to make any difference.
> 
> Ok, next we need platform details (hardware details, perl -V, etc.).

Same here.

It is fixed when I re-add discard_request_body() between new() and parse(), 
which I had removed during an abortive attempt to use the 
APR::Request::Apache2 API.


*** mod_perl version 2.000000

*** using /usr/local/perl/bin/../lib/Apache2/BuildConfig.pm

*** Makefile.PL options:
   MP_APR_LIB     => aprext
   MP_AP_PREFIX   => /usr/local/apache2
   MP_COMPAT_1X   => 0
   MP_GENERATE_XS => 1
   MP_LIBNAME     => mod_perl
   MP_USE_DSO     => 1

*** The httpd binary was not found

$ /usr/local/apache2/bin/httpd -V
Server version: Apache/2.0.54
Server built:   Apr 18 2005 19:16:17
Server's Module Magic Number: 20020903:9
Architecture:   32-bit
Server compiled with....
  -D APACHE_MPM_DIR="server/mpm/worker"
  -D APR_HAS_SENDFILE
  -D APR_HAS_MMAP
  -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
  -D APR_USE_SYSVSEM_SERIALIZE
  -D APR_USE_PTHREAD_SERIALIZE
  -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
  -D APR_HAS_OTHER_CHILD
  -D AP_HAVE_RELIABLE_PIPED_LOGS
  -D HTTPD_ROOT="/usr/local/apache2"
  -D SUEXEC_BIN="/usr/local/apache2/bin/suexec"
  -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
  -D DEFAULT_ERRORLOG="logs/error_log"
  -D AP_TYPES_CONFIG_FILE="conf/mime.types"
  -D SERVER_CONFIG_FILE="conf/httpd.conf"


*** (apr|apu)-config linking info

  -L/usr/local/apache2/lib -laprutil-0 -lgdbm -ldb-4.2 -lexpat
  -L/usr/local/apache2/lib -lapr-0 -lrt -lm -lcrypt -lnsl  -lpthread -ldl

*** /usr/local/perl/bin/perl -V
Summary of my perl5 (revision 5 version 8 subversion 6) configuration:
   Platform:
     osname=linux, osvers=2.6.8-24.10-default, archname=i686-linux-thread-multi
     uname='linux red 2.6.8-24.10-default #1 wed dec 22 11:54:27 utc 2004 
i686 athlon i386 gnulinux '
     config_args=''
     hint=recommended, useposix=true, d_sigaction=define
     usethreads=define use5005threads=undef useithreads=define 
usemultiplicity=define
     useperlio=define d_sfio=undef uselargefiles=undef usesocks=undef
     use64bitint=undef use64bitall=undef uselongdouble=undef
     usemymalloc=n, bincompat5005=undef
   Compiler:
     cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS 
-fno-strict-aliasing -pipe -I/usr/local/include',
     optimize='-O3 -march=athlon-tbird',
     cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS 
-fno-strict-aliasing -pipe -I/usr/local/include'
     ccversion='', gccversion='3.3.4 (pre 3.3.5 20040809)', gccosandvers=''
     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
     d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
     ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', 
lseeksize=4
     alignbytes=4, prototype=define
   Linker and Libraries:
     ld='cc', ldflags =' -L/usr/local/lib'
     libpth=/usr/local/lib /lib /usr/lib
     libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
     perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
     libc=, so=so, useshrplib=true, libperl=libperl.so
     gnulibc_version='2.3.3'
   Dynamic Linking:
     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E 
-Wl,-rpath,/usr/local/perl/lib/CORE'
     cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'

Characteristics of this binary (from libperl):
   Compile-time options: MULTIPLICITY USE_ITHREADS PERL_IMPLICIT_CONTEXT
   Built under linux
   Compiled at Jan 22 2005 03:55:06
   %ENV:
     PERL_LWP_USE_HTTP_10="1"
   @INC:
     /usr/local/perl/lib
     /usr/local/perl/lib
     /usr/local/perl/lib
     /usr/local/perl/lib
     .


> Anything interesting in the server's error log?

Nope.

Mime
View raw message