[Maypole] deep recursion on do_edit

Jim Blomo jim@rescomp.berkeley.edu
Sat, 21 Aug 2004 18:49:40 -0700


Hi,

I'm getting errors when trying to add a new object to my username table.
However, the error messages are inconsistant, and I suspect only get
printed to the log when there's enough memory around.  They are usually
one or more of the following:

Deep recursion on subroutine "Class::DBI::get" at /usr/local/lib/perl5/site_perl/5.8.5/Class/Accessor.pm line 350.
Deep recursion on subroutine "Class::DBI::_flesh" at /usr/local/lib/perl5/site_perl/5.8.5/Class/DBI.pm line 84 0.
Deep recursion on anonymous subroutine at /usr/local/lib/perl5/site_perl/5.8.5/Class/DBI.pm line 852.

-or-

[Sun Aug 22 00:23:06 2004] [error] Out of memory during "large" request for 134221824 bytes, total sbrk() is 4 09249792 bytes at /usr/local/lib/perl5/site_perl/5.8.5/Class/DBI.pm line 278.\n

-or-

Out of memory during request for 1012 bytes, total sbrk() is 532396032 bytes!
Callback called exit.

There is no problem when I create the object manually in the DB or
through
perl -e 'use Fuzzyowl; $o = Fuzzyowl::Username->create({email =>'admin',
username =>'admin',password=>'password'}); print $o;'
I'm using the factory templates to manipulate the data, and the only
customization to the class has been putting in its relationship to UserType and adding sub stringify_self { shift->username; }.

                                  Table "public.username"
   Column    |       Type        |                        Modifiers                         
-------------+-------------------+----------------------------------------------------------
 id          | integer           | not null default nextval('public.username_id_seq'::text)
 email       | character varying | 
 fname       | character varying | 
 lname       | character varying | 
 username    | character varying | not null
 password    | character varying | not null
 type        | integer           | not null default 1
Indexes:
    "username_pkey" primary key, btree (id)
Foreign-key constraints:
    "$3" FOREIGN KEY ("type") REFERENCES user_type(id)

Would there be any problems with having a column name equal to the table
name?  Any pointers on where to look next would be appreciated.

Jim