[Catalyst] Any chance there is an arbitrary limit to how many classes you can load this way...?

Dustin Suchter dsuchter at ucla.edu
Tue Oct 9 10:51:49 GMT 2007


So let's assume I have the below code. Each of the 13 classes
represent 1 table in the same MySQL db. All class definitions are
essentially identical in structure and have nothing more complex
than foreign keys in them.

Here's the weird thing, if I run my code with all 13 classes, my
default view stops working - it seems to be replaced with the only
other view I've defined! I only use the other one by manually
calling 'forward' to it in 1 function - ultra weird!

If I remove any of the classes the load_classes line the behavior
goes back to expected. I've tried lots of reordering, renaming,
removing, etc etc. I actually have far more than 13 classes I want
to load, so I've even tried interchanging which 13 I test with. As
far as I can tell, loading more than 12 classes at a time here
causes some sort of buffer overflow that ends up messing with my
views. That really doesn't make any sense to me, but it is what I'm
observing.

Also, I notice that in the debug output when starting my server,
both my views are present at all times, so it's not like the
secondary view is getting used because the default one is missing.

However, if I delete the class defining my secondary view then my
default view starts working again. This seems to imply that having
more than 12 classes loaded in my Model somehow changes my default
view order...?!

umm... help? =]

###############
package MyAppDB;

use base qw/DBIx::Class::Schema/;
__PACKAGE__->load_classes({
    MyAppDB => [qw/One Two Three Four Five Six Seven Eight Nine Ten
Eleven Twelve Thirteen/]
});

###############



More information about the Catalyst mailing list