[Catalyst] Strange (error)? when trying to load 20 classes or more on DBIx::Class::Schema

Juan Miguel Paredes juan.paredes at gmail.com
Wed Dec 13 18:42:49 GMT 2006


Hi, folks!

We're using Catalyst::Model::DBIC::Schema (v0.18) for a new web
application, including plugins for authorization and authorization for
DBIC.  Everything works fine... until class #20 is added to the
Schema. Then, the application loads succesfully, but then every access
to $c->user builds the sql query using a wrong table!!! We tried
searching around, and there doesn't seem to be more information or
known bug. Plugins loaded:

 Catalyst::Plugin::Authentication  0.09
 Catalyst::Plugin::Authentication::Credential::Password
 Catalyst::Plugin::Authentication::Store::DBIC  0.07
 Catalyst::Plugin::Authorization::ACL  0.08
 Catalyst::Plugin::Authorization::Roles  0.05
 Catalyst::Plugin::Captcha  0.03
 Catalyst::Plugin::Config::YAML  0.04
 Catalyst::Plugin::ConfigLoader  0.13
 Catalyst::Plugin::Email  0.05
 Catalyst::Plugin::FillInForm  0.06
 Catalyst::Plugin::FormBuilder  1.06
 Catalyst::Plugin::FormValidator::Simple  0.10
 Catalyst::Plugin::Prototype  1.32
 Catalyst::Plugin::Session  0.13
 Catalyst::Plugin::Session::State::Cookie  0.06
 Catalyst::Plugin::Session::Store::FastMmap  0.02
 Catalyst::Plugin::StackTrace  0.06
 Catalyst::Plugin::Static::Simple  0.14
 Catalyst::Plugin::SubRequest  0.10

We're using PostgreSQL 7.4 server and Catalyst on Debian Etch
(2.6.17-2-686 #1 SMP).  The scenario is the same on Catalyst embedded
server and Apache2/mod_perl2 (mpm-prefork).

We're not using DBIx::Class::Schema::Loader, but defining the schema
classes ourselves, like:

package Confianza::Schema::BD;

use strict;
use base qw/DBIx::Class::Schema/;

__PACKAGE__->load_classes(qw/

InstFinanciera
PerNat
RolesFunciones
RolesUsuarios
SolicitanteNatural
Solicitante
TpActiviEcon
TpDependLaboral
TpEdoCivil
TpEdoUsuario
TpEmpresa
TpFiguraJur
TpFuncion
TpInstFinanciera
TpPais
TpPersona
TpRol
TpUnidadAdm
TpUsuario
UsuarioInterno
Usuario

/);

First, we were using just load_classes(qw//), with same results.  When
removing any 2 classes from the schema (so that less than 20 classes
will remain), the app works fine.

A PAR file with the application and database script can be downloaded here:

http://juanmiguel.no-ip.com/descargas/

Any help will be greatly appreciated!



More information about the Catalyst mailing list