[Dbix-class] ResultSetManager makes DBIC to hang in debugger?

Ash Berlin ash_cpan at firemirror.com
Thu Aug 9 11:20:43 GMT 2007


Oleg Pronin wrote:
> Hi.
> I've just updated to 0.8005 and discovered a problem: ResultSetManager
> makes DBIC to hang with 100% cpu usage in debugger with latest version
> of DBIC.
>  
> Example:
>  
> package package MyApp::Schema::BlackList;
> ...
> __PACKAGE__->load_components(qw/ResultSetManager Core/);
> ...
> sub bad_nicknames : ResultSet { shift->search({type =>
> BLACK_LIST_TYPE_NICKNAME}) }
>  
> my $rs = $schema->resultset('BlackList');
> my $bnick_rs = $rs->bad_nicknames; # The process hangs at this line in
> debugger.
>  
> This hangs too:
> MyApp::Schema::BlackList::_resultset::bad_nicknames()
>  
> The command "s MyApp::Schema::BlackList::_resultset::bad_nicknames()"
> doesn't even enter in the function - it immedeately hangs!
>  
> DB<6> x Class::Inspector->functions('MyApp::Schema::BlackList::_resultset')
> 0  ARRAY(0x4609138)
>    0  'bad_matches'
>    1  'bad_nicknames'
>    2  'bad_words'
> 
> 
> ------------------------------------------------------------------------
> 

ResultSetManager has always been marked as experimental. I'd suggest you
just create your own resultset class and use
__PACKAGE__->resultset_class(....)

-ash



More information about the DBIx-Class mailing list