I recently made the move from mod_perl 1.99 to mod_perl 2.0.2. After a bit
of porting (changing Apache:: to Apache2::, etc), everything seemed to be
working fairly well. But then some bizarre things started happening.

About 1 in 50 times, a page will fail to load with "internal server error".
The error logs show some *very* weird errors:


failed to resolve handler `ModPerl::Registry': Global symbol "$base"
requires explicit package name at /usr/share/perl/5.8/base.pm line
19.\nCompilation failed in require at
/opt/apache2/perl5lib/i486-linux-gnu-thread-multi/ModPerl/Registry.pm line
25.\nBEGIN failed--compilation aborted at
/opt/apache2/perl5lib/i486-linux-gnu-thread-multi/ModPerl/Registry.pm line
25.\nCompilation failed in require at (eval 60) line 3.\n


And stuff like this:


Global symbol "$r" requires explicit package name at
/opt/weedns-4/skins/yi/perl5lib/yi/page/css.pm line 16.\nCompilation failed
in require at /opt/weedns-4/skins/yi/htdocs/css.pl line 6.\nBEGIN
failed--compilation aborted at /opt/weedns-4/skins/yi/htdocs/css.pl line
6.\n


Here's lines 14 - 20 of css.pm:

14 - sub handler {
15 -    my($class, $r) = @_;
16 -    $r->content_type("text/html");
17 -    $r->print("<LINK REL=\"STYLESHEET\" TYPE=\"text/css\" HREF=\"/yi.css\" 
/>\n");
18 -    $r->status(OK);
19 -    return OK;
20 - }


Has anybody else run into this? Did I do something wrong? Everything ran
fine under mod_perl 1.99, and essentially all I've changed is using
Apache2:: namespaces instead of Apache:: namespaces.

Any help at all would be appreciated.

        Thanks,
                Tyler

Reply via email to