Monday, March 28, 2011

Re: ODBC listSources() giving Out of Memory

More info...

I've been tearing apart the listSources() method in attempts to figure
out what's going on. I ran PHP's odbc_result_all() method on the
result and got a table with the correct number of rows, but with
really weird, messed up data. Instead of containing info from my DB,
it seemed to contain the names of 4 files in my dbo and datasources
directory. Looks something like this...

TABLE_CAT TABLE_SCHEM
TABLE_NAME TABLE_TYPE REMARKS
Ü //app/plugins/datasources/models/datasources/dbo/dbo_db2.php Ûþ¨//
app/plugins/datasources/models/datasources/dbo/dbo_adodb.php Ü (//app/
plugins/datasources/models/datasources/xmlrpc_source.php Ûý˜//app/
plugins/datasources/models/datasources/soap_source.php
Ü //app/plugins/datasources/models/datasources/dbo/dbo_db2.php Ûþ¨//
app/plugins/datasources/models/datasources/dbo/dbo_adodb.php Ü (//app/
plugins/datasources/models/datasources/xmlrpc_source.php Ûý˜//app/
plugins/datasources/models/datasources/soap_source.php
Ü //app/plugins/datasources/models/datasources/dbo/dbo_db2.php Ûþ¨//
app/plugins/datasources/models/datasources/dbo/dbo_adodb.php Ü (//app/
plugins/datasources/models/datasources/xmlrpc_source.php Ûý˜//app/
plugins/datasources/models/datasources/soap_source.php
Ü //app/plugins/datasources/models/datasources/dbo/dbo_db2.php Ûþ¨//
app/plugins/datasources/models/datasources/dbo/dbo_adodb.php Ü (//app/
plugins/datasources/models/datasources/xmlrpc_source.php Ûý˜//app/
plugins/datasources/models/datasources/soap_source.php
Ü //app/plugins/datasources/models/datasources/dbo/dbo_db2.php Ûþ¨//
app/plugins/datasources/models/datasources/dbo/dbo_adodb.php Ü (//app/
plugins/datasources/models/datasources/xmlrpc_source.php Ûý˜//app/
plugins/datasources/models/datasources/soap_source.php
Ü //app/plugins/datasources/models/datasources/dbo/dbo_db2.php Ûþ¨//
app/plugins/datasources/models/datasources/dbo/dbo_adodb.php Ü (//app/
plugins/datasources/models/datasources/xmlrpc_source.php Ûý˜//app/
plugins/datasources/models/datasources/soap_source.php


Never seen anything like this before...

On Mar 28, 10:40 am, mhamann <matthew.ham...@gmail.com> wrote:
> Outside the CakePHP framework, the same odbc_tables() call followed by
> pushing the returned values into an array (i.e. the same thing the
> ODBC driver is doing) requires less than 1MB of memory. Obviously,
> Cake will require more than that due to additional overhead, but I
> can't see any reason for it to be pushing 526MB. I'll check with my
> admins to see if they can tell what's up, but any further suggestions
> regarding the issue would be most appreciated!
>
> On Mar 25, 6:52 pm, Ryan Schmidt <google-2...@ryandesign.com> wrote:
>
>
>
>
>
>
>
> > On Mar 24, 2011, at 16:31, mhamann wrote:
>
> > > I'm trying to access a DB2 database via ODBC and I'm getting the
> > > following error when Cake attempts to list all of the tables:
> > > "Fatal error: Allowed memory size of 33554432 bytes exhausted (tried
> > > to allocate 551995385 bytes)"
>
> > Your PHP is configured for a maximum of 32MB of memory per process, but it tried to allocate 526MB. This is clearly quite large, so I'd look into why this much memory was requested. Would the results of your query be enormous? Try a smaller query.

--
Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org
Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions.


To unsubscribe from this group, send email to
cake-php+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php

No comments: