[freeside-devel] Tonights oddness (page doesn't work coming from print)
ivan
ivan at 420.am
Mon Jan 21 06:00:12 PST 2002
On Tue, Dec 11, 2001 at 07:21:22PM -0600, Dave Burgess wrote:
> Hola,
>
> Today's strangeness....
Yes, this one sure is strange. I've never seen anything like this. For
reference, what versions of Perl and mod_perl are you using?
> Me and our bookkeeper have been working with the system. We've got all the
> data in, have generated invoices for everyone (which we hope to blow away
> before the first of the year) and are running into the oddest error:
>
> [Tue Dec 11 19:12:22 2001] [error] [asp] [4997] [error] Can't call
> method "pkgnum" without a package or object reference at cust_main.cgi
> line 307 during global destruction. <--> ,
> /usr/pkg/lib/perl5/site_perl/5.6.1/Apache/ASP.pm line 1574
"during global destruction" refers to Perl's shutdown sequence, when it
cleans up all outstanding variables. I can't for the life of me figure
out how Perl would up in cust_main.cgi during global destruction (normally
Perl just frees all regular variables and calls the DESTROY method for any
tied variables) - nor how the @packages array would up with
elements that can't handle a ->pkgnum method call.
> It happens (usually) when we click on any of the various 'View this customer'
> links, or when we go from viewing an invoice and reprinting it. Here's the
> odd part:
>
> If I hit 'reload' the page comes up fine.
>
> I suppose it could be me somehow, but I don't see anything that would cause
> this. The other possibility is that it has something to do with database
> updates not completing in time....
Database updates not completing in time...? I don't think that's
relevant.
> Any places where you think I should start looking?
The code in question looks like:
foreach $package (@packages) {
my $pkgnum = $package->pkgnum;
Hmm, if you can duplicate the problem, dump what's in $package that is
causing the `Can't call method "pkgnum"' error to be thrown.
--
_ivan
More information about the freeside-devel
mailing list