You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Kiran Kumar <mk...@gmail.com> on 2009/08/27 02:07:54 UTC
PerlRun Subroutine redefine warnings
Hi,
I am running mod_perl/2.0.4 on Linux , I keep getting the subroutine
redefined warnings. Perlrun reloads the cgi on each request so why do
I keep getting these warnings ? Is there any other way to avoid this
other than no warnings qw/redefine/ in my scripts. Am I missing
something here ?.
Here is a minimal script I tested with
#!/usr/bin/perl
use strict;
use warnings;
print "Content-type:text/html \n\n";
test();
test();
sub test {
print " in test \n";
}
and here is my httpd.conf
PerlModule ModPerl::PerlRun
<Location /cgi-bin>
SetHandler perl-script
PerlHandler ModPerl::PerlRun
PerlSetVar ReloadAll Off
PerlResponseHandler +ModPerl::PerlRun
PerlOptions +ParseHeaders
PerlSendHeader On
Options +ExecCGI
</Location>
PerlRequire "/opt/nms/www/cgi-bin/startup.pl"
# I modify @INC in startup.pl and do not load any modules
Error in the error_log
Subroutine test redefined at /opt/nms/www/cgi-bin/test1.pl line 22.
Subroutine test redefined at /opt/nms/www/cgi-bin/test1.pl line 10.
Thanks,
Kiran
Re: PerlRun Subroutine redefine warnings
Posted by Adam Prime <ad...@utoronto.ca>.
Kiran Kumar wrote:
> Hi Mike,
> Thanks for your reply, If you check my script there is no other
> subroutine with the same name and I do not import any modules , I
> renamed the subroutine to foo and I still get the same warnings.
>
There's an old thread from someone else reporting this, though it
doesn't have any sort of resolution.
http://marc.info/?t=93783022000001&r=1&w=2
Theoretically, while running under PerlRun that shouldn't happen.
Adam
Re: PerlRun Subroutine redefine warnings
Posted by Kiran Kumar <mk...@gmail.com>.
Hi Mike,
Thanks for your reply, If you check my script there is no other
subroutine with the same name and I do not import any modules , I
renamed the subroutine to foo and I still get the same warnings.
Thanks,
Kiran
On Wed, Aug 26, 2009 at 8:20 PM, Mike OK<mi...@acorg.com> wrote:
> This error occurs when you have two subroutines with the same name.
>
> Mike O'Krongli
> President and CTO
> Acorg Inc
> 519 432-1185
> ----- Original Message ----- From: "Kiran Kumar" <mk...@gmail.com>
> To: <mo...@perl.apache.org>
> Sent: Wednesday, August 26, 2009 8:07 PM
> Subject: PerlRun Subroutine redefine warnings
>
>
>> Hi,
>> I am running mod_perl/2.0.4 on Linux , I keep getting the subroutine
>> redefined warnings. Perlrun reloads the cgi on each request so why do
>> I keep getting these warnings ? Is there any other way to avoid this
>> other than no warnings qw/redefine/ in my scripts. Am I missing
>> something here ?.
>>
>> Here is a minimal script I tested with
>>
>> #!/usr/bin/perl
>> use strict;
>> use warnings;
>> print "Content-type:text/html \n\n";
>>
>> test();
>> test();
>>
>>
>> sub test {
>> print " in test \n";
>> }
>>
>> and here is my httpd.conf
>>
>> PerlModule ModPerl::PerlRun
>> <Location /cgi-bin>
>> SetHandler perl-script
>> PerlHandler ModPerl::PerlRun
>> PerlSetVar ReloadAll Off
>>
>> PerlResponseHandler +ModPerl::PerlRun
>> PerlOptions +ParseHeaders
>> PerlSendHeader On
>> Options +ExecCGI
>> </Location>
>> PerlRequire "/opt/nms/www/cgi-bin/startup.pl"
>> # I modify @INC in startup.pl and do not load any modules
>>
>> Error in the error_log
>> Subroutine test redefined at /opt/nms/www/cgi-bin/test1.pl line 22.
>> Subroutine test redefined at /opt/nms/www/cgi-bin/test1.pl line 10.
>>
>> Thanks,
>> Kiran
>>
>
>
Re: PerlRun Subroutine redefine warnings
Posted by Mike OK <mi...@acorg.com>.
This error occurs when you have two subroutines with the same name.
Mike O'Krongli
President and CTO
Acorg Inc
519 432-1185
----- Original Message -----
From: "Kiran Kumar" <mk...@gmail.com>
To: <mo...@perl.apache.org>
Sent: Wednesday, August 26, 2009 8:07 PM
Subject: PerlRun Subroutine redefine warnings
> Hi,
> I am running mod_perl/2.0.4 on Linux , I keep getting the subroutine
> redefined warnings. Perlrun reloads the cgi on each request so why do
> I keep getting these warnings ? Is there any other way to avoid this
> other than no warnings qw/redefine/ in my scripts. Am I missing
> something here ?.
>
> Here is a minimal script I tested with
>
> #!/usr/bin/perl
> use strict;
> use warnings;
> print "Content-type:text/html \n\n";
>
> test();
> test();
>
>
> sub test {
> print " in test \n";
> }
>
> and here is my httpd.conf
>
> PerlModule ModPerl::PerlRun
> <Location /cgi-bin>
> SetHandler perl-script
> PerlHandler ModPerl::PerlRun
> PerlSetVar ReloadAll Off
>
> PerlResponseHandler +ModPerl::PerlRun
> PerlOptions +ParseHeaders
> PerlSendHeader On
> Options +ExecCGI
> </Location>
> PerlRequire "/opt/nms/www/cgi-bin/startup.pl"
> # I modify @INC in startup.pl and do not load any modules
>
> Error in the error_log
> Subroutine test redefined at /opt/nms/www/cgi-bin/test1.pl line 22.
> Subroutine test redefined at /opt/nms/www/cgi-bin/test1.pl line 10.
>
> Thanks,
> Kiran
>