something is wrong here. apache 2.0.45,mod_perl 1.99_08 and perl 5.8.0 The following little script running under ModPerl::Registry makes consuming all the memory and not releasing it back. Its not a classical memleak, cause the consumed mem does not increase. If running in single-server-mode the consumed mem stays at approx. 200M, and if I run apache in standard prefork-mode and call the script a few times all apache-threads want 200M and it eats up all my mem and in error_log I get:
Out of memory! Callback called exit. ---------------------------- #! /usr/bin/perl -w use strict; use CGI; run(); sub run{ my @x=(); $#x=50000000; # this is the big one my $q=new CGI; print $q->header(),$q->start_html(); print int(rand(10000)); print $q->end_html(),"\n"; # my @x=(); # undef @x; } ---------------------------- I tried to set @x=() at the end of the sub, which did not change anything. If I explictely undef @x the memory is released. I triple-checked my logs if there is any 'stay not shared' or 'nested subroutine' or whatever warning and I'm stubbornly convinced that there is a problem. imho apache should release the memory back when the sub is exited. Please tell me where my brain-error is. thnx, peter -- mag. peter pilsl IT-Consulting tel: +43-699-1-3574035 fax: +43-699-4-3574035 [EMAIL PROTECTED] http://www.goldfisch.at