I watch Postgres while its doing the query - and the postmaster is not the culprit for memory usage. It looks to me like PHP's postgres driver is loading the entire result into memory when I do a query. That is, the postgres process stays within the memory its config tells it to use, while a PHP script will eat as much as it can to load the result set. Although I would think best practices would dictate the use of a cursor or some limit statements, I was also trying to get at whether or not a PHP extension <i>should</i> be able to use as much RAM as it wants. -Adam ----- Original Message ----- From: "Robby Russell" <rrussell@xxxxxxxxxxxxxxxxx> To: "A Palmblad" <adampalmblad@xxxxxxxx> Cc: <pgsql-php@xxxxxxxxxxxxxx> Sent: Wednesday, June 02, 2004 1:17 PM Subject: Re: [PHP] PHP memory usage > A Palmblad typed this on 05/31/2004 02:22 PM: > > We've been running into some issues with PHP and Postgres, and memory usage. > > On a dual athlon 64, w/ 4 gigs of RAM, PHP 4.3.6, and Postgres 7.4.2 I've > > seen our server start to crawl after some queries returning very large > > result sets. Although large result sets aren't exactly what we want to be > > dealing with, I really want to avoid a situation where a user could disrupt > > our server with certain options to some searches. > > > > I did a quick commandline test, and it looks like PHP starts to eat memory > > during its call to pg_query. By eat memory, I mean use memory well in > > excess of php.ini's memory_limit of 8 megs. (I stop it around 90% of > > available memory usage) Is this acceptable behaviour, or should I report it > > to PHP as a bug? If not, are my only solutions to wrap my selects in > > cursors and/or to use limit? > > > > -Adam Palmblad > > > > I am going to take a quick guess and suggest that test those queries in > psql itself. You might be running into some issues with your queries. > > > Test your queries with psql, EXPLAIN. > \h EXPLAIN > > -Robby > > -- > Robby Russell, | Sr. Administrator / Lead Programmer > Command Prompt, Inc. | http://www.commandprompt.com > rrussell@xxxxxxxxxxxxxxxxx | Telephone: (503) 667.4564 > > ---------------------------(end of broadcast)--------------------------- > TIP 7: don't forget to increase your free space map settings