CountZero has asked for the wisdom of the Perl Monks concerning the following question:

Fellow Monks!

Friday evening I updated Catalyst to version 5.33 through the use of the ppm command "upgrade". It also upgraded a lot of other modules (a.o. mod_perl).

Now my Catalyst application has stopped working.

Fearing some damage to mod_perl (which is alwys a bit of a pain to get it working on Windows), I checked some other scripts running under mod_perl (such as the "perl-status" module) and these seem to work fine.

So I wrote an absolute minimal "Catalyst"-enabled module (just use Catalyst qw/-Debug/; 1;) and tried to run that in my Apache/mod_perl server (http://localhost/MyApp). The error-log shows [Sun Aug 21 17:38:54 2005] [notice] Parent: child process exited with status 9 -- Restarting. and FireFox tries to load www.localhost.com. Very strange: no error message, nothing else in the error-log. If I try to access a non-existing location on my "localhost" I get the usual 404 Not Found error page.

If I comment out the use Catalyst qw/-Debug/; statement and put in an empty handler sub I get no errors anymore and Apache returns an empty page.

So it seems that the problem is with Catalyst.

Did anybody experience this too? Someone an idea to solve it?

I will post this tomorrow on the Catalyst mailing list too (I have no access now).

Update: Having looked some more at my set-up, I see that the Catalyst::Engine::Apache::MP20::Apreq module uses Apache2::Request which I don't have on my system. It is on CPAN, but neither CPAN nor CPANPLUS will install it on my compiler-challenged Windows XP. PPM doesn't have it either. Does any Windows XP Monk has it in her/his site/lib tree?

Update 2: I found Apache2::Request, it is part of the libapreq-library, which PPM can install. Unfortunately, it didn't solve my problem. I keep getting the same errors.

Update 2: Solved! It seems that somehow the line __PACKAGE__->setup got commented out in my application-module and therefore Catalyst was not doing its set-up before it got called, which caused all this weird behaviour.

CountZero

"If you have four groups working on a compiler, you'll get a 4-pass compiler." - Conway's Law

Replies are listed 'Best First'.
Re: Catalyst broken after update?
by PodMaster (Abbot) on Aug 21, 2005 at 19:44 UTC
    Friday evening I updated Catalyst to version 5.33 through the use of the ppm command "upgrade".
    Don't do that (its a pure-perl module). Read A guide to installing modules and run the test suite. Also read the Changes file.

    On the other hand if its looking for Apache2, you must've installed mod_perl2 ... visit http://perl.apache.org and look for the win32 guide.

    MJD says "you can't just make shit up and expect the computer to know what you mean, retardo!"
    I run a Win32 PPM repository for perl 5.6.x and 5.8.x -- I take requests (README).
    ** The third rule of perl club is a statement of fact: pod is sexy.

      Well, I did a general upgrade and it upgraded Catalyst too (and a bunch of other modules). Serves me right for always wanting to be the first on the block with the newest modules (and not doing a general back-up beforehand). In the end (see "Update 3" on the original node) it had nothing to do with the upgrade, but all with a line in my application code that got commented out.

      CountZero

      "If you have four groups working on a compiler, you'll get a 4-pass compiler." - Conway's Law