[Update] Re: Interesting problem...

Michelle Sullivan <[email protected]> Mon, 20 Mar 2023 00:57:00 +1100
Newsgroups gmane.comp.apache.mod-perl
Message-ID <[email protected]>
Michelle Sullivan wrote:
> Hi All,
>
> Been using mod_perl then mod_perl2 for years, buit have just come up 
> with an interesting issue...
>
> Just installed a FreeBSD 12.4 Jail with Apache 2.4.52, mod_perl 2.0.12 
> with perl v5.32.1 and transfered a working module set from the 
> previous host to the new host for testing and can't seem to get past 
> this:
>
> [Sun Mar 19 16:39:00.003814 2023] [perl:error] [pid 80095] [client 
> 2407:ipv6:58115] Can't locate object method "FETCH" via package 
> "APR::Table" at /webroot/perlmods/TV/CGI.pm line 142.\n
>
> Line 142 is:
>
> my $requestor = $self->req->headers_in->{REMOTE_ADDR};
>
> (all headers_in calls fail)
>
> The beginning of the module includes:
>
> package: TV::CGI;
>
> use strict;
>
> use vars qw($VERSION);
>
> my $VERSION = sprintf("%d.%d.%d.%d.%d.%d", q$Id: CGI.pm 705 2019-05-31 
> 13:48:59Z  $ =~ /(\d+)-(\d+)-(\d+) (\d+):(\d+):(\d+)Z/);
>
> use C::Mlock;
> use Data::Dumper;
> use URI::Escape;
> use MIME::Parser;
> use APR::SockAddr;
> use Apache2::Const qw(:common :http);
> use Apache2::Connection ();
> use Apache2::RequestRec ();
>
> I've tried using the freebsd pkg version, tried compiling it from 
> source (using the ports tree).. even tried compiling by hand and I'll 
> be damned if I can't work out why its failing...
>
> Any thoughts?
>
> Thanks,
>
Adding:

PerlLoadModule APR
PerlLoadModule APR::Base64
PerlLoadModule APR::Brigade
PerlLoadModule APR::Bucket
PerlLoadModule APR::BucketAlloc
PerlLoadModule APR::BucketType
PerlLoadModule APR::Date
PerlLoadModule APR::Error
PerlLoadModule APR::Finfo
PerlLoadModule APR::IpSubnet
PerlLoadModule APR::OS
PerlLoadModule APR::Pool
PerlLoadModule APR::SockAddr
PerlLoadModule APR::Socket
PerlLoadModule APR::Status
PerlLoadModule APR::String
PerlLoadModule APR::Table
PerlLoadModule APR::ThreadMutex
PerlLoadModule APR::ThreadRWLock
PerlLoadModule APR::URI
PerlLoadModule APR::UUID
PerlLoadModule APR::Util
PerlLoadModule APR::Const
PerlLoadModule APR::PerlIO

Seems to have made it work.. which suggests its not autoloading.. but I 
have no idea why.

Regards,

Michelle

-- 
Michelle Sullivan
http://www.mhix.org/