perl-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Salvador Ortiz Garcia <...@msg.com.mx>
Subject Re: Endless loop in perl_sections (was: cvs commit: modperl/src/modules/perl perl_config.c)
Date Tue, 12 Dec 2000 07:04:54 GMT
On Tue, 12 Dec 2000, Gerald Richter wrote:

> Hi,
> 
> after upgrading form mod_perl-1.24 to 1.24_01 (it's the same for the current
> CVS version) I get an endless loop inside my Perl sections.
> 
> A MOD_PERL_TRACE looks like:
> 
> "last line of my startup.pl" at /opt/symphony/etc/httpd/startup.pl line 68,
> <DATA> chunk 1.
> bootstrapping <Perl> sections: arg=/opt/symphony/etc/httpd/startup.pl,
> keys=69
> loading perl module 'Apache'...ok
> loading perl module 'Tie::IxHash'...ok
> perl_section: </Files>
> perl_section: <Directory /CVS(/|$)>
> Deny from all (OK) Limit=no
> Order allow,deny (OK) Limit=no
> perl_section: <Directory /_vti_(/|$)>
> Deny from all (OK) Limit=no
> Order allow,deny (OK) Limit=no
> perl_section: </Directory>
> .PerlSetEnv' directive is TAKE2, (0 elements)
> SVt_PV: $SSLSessionCache = dbm:/opt/symphony/log/ssl_scache'
> handle_command (SSLSessionCache dbm:/opt/symphony/log/ssl_scache): OK
> SVt_PV: $PerlRequire = /opt/symphony/etc/httpd/startup.pl'
> handle_command (PerlRequire /opt/symphony/etc/httpd/startup.pl):
> PerlRequire: arg=/opt/symphony/etc/httpd/startup.pl'
> attempting to require /opt/symphony/etc/httpd/startup.pl'
> bootstrapping <Perl> sections: arg=/opt/symphony/etc/httpd/startup.pl,
> keys=69
> loading perl module 'Apache'...ok
> loading perl module 'Tie::IxHash'...ok
> perl_section: </Files>
> perl_section: <Directory /CVS(/|$)>
> ....
> 
> The first line is a warn that my startup.pl outputs. As you see the
> PerlRequire is done again (for the same file) which calls the bootstrapping
> <Perl> sections. This continues until the server runs output of memory...
> 
> After looking a little bit around, I found that the reason for that
> behaviour is the following change. If I revert this change (at least in the
> PerlRequire part), everything works as before. Because I am not sure what
> was the reason for this change, I cannot suggest a fix, other then reverting
> it.

Before this change, the walking of the %ApacheReadConfig:: namespace
populated by a PerlRequire directive was ignored (or delayed).

Because the

  SVt_PV: $PerlRequire = /opt/symphony/etc/httpd/startup.pl'
 
from your trace I suspect that inside your script, you are PerlRequir'ing
it again via an $ApacheReadConfig::PerlRequire.

Can I see the relevant part of your config?

Regards

Salvador Ortiz



Mime
View raw message