Re: PHP memory usage - Mailing list pgsql-php

From Robert Treat
Subject Re: PHP memory usage
Date
Msg-id 200406041035.53198.xzilla@users.sourceforge.net
Whole thread Raw
In response to Re: PHP memory usage  (Christopher Kings-Lynne <chriskl@familyhealth.com.au>)
List pgsql-php
And yet somehow the my$ql folks get a php function to do this...

Robert Treat

On Wednesday 02 June 2004 21:37, Christopher Kings-Lynne wrote:
> The simple answer is the PHP's built-in memory checking cannot control
> what a plugin .so does.  Use a cursor.
>
> Chris
>
> Robert Treat wrote:
> > Interesting... I was just about to post a question regarding the
> > differences between the functions mysql_query and mysql_unbuffered_query
> > in regards to pg_query, but I guess this is the issue right here, and
> > from what I can tell there is no php based way to work around it.
> >
> > Robert Treat
> >
> > On Wednesday 02 June 2004 16:41, A Palmblad wrote:
> >>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@commandprompt.com>
> >>To: "A Palmblad" <adampalmblad@yahoo.ca>
> >>Cc: <pgsql-php@postgresql.org>
> >>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@commandprompt.com | Telephone: (503) 667.4564
> >>>
> >>>---------------------------(end of broadcast)---------------------------
> >>>TIP 7: don't forget to increase your free space map settings
> >>
> >>---------------------------(end of broadcast)---------------------------
> >>TIP 7: don't forget to increase your free space map settings

--
Build A Brighter Lamp :: Linux Apache {middleware} PostgreSQL

pgsql-php by date:

Previous
From: Nick Barr
Date:
Subject: Re: Hi!, and a Question
Next
From: "V i s h a l Kashyap @ [Sai Hertz And Control Systems]"
Date:
Subject: Re: SSL PostgreSQL and PHP