From: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
---|---|
To: | Ashley Moran <work(at)ashleymoran(dot)me(dot)uk> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Andreas Kretschmer <akretschmer(at)spamfence(dot)net>, PostgreSQL General <pgsql-general(at)postgresql(dot)org>, Tony Caduto <tony_caduto(at)amsoftwaredesign(dot)com> |
Subject: | Re: How to write a function that manipulates a set of results |
Date: | 2007-03-14 23:02:31 |
Message-ID: | 20070314230231.GB30723@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Ashley Moran wrote:
>
> On Mar 14, 2007, at 7:25 pm, Tom Lane wrote:
> >Sure: use a table. What was the objection to temp tables exactly?
>
> My boss is under the impression that calling the procedure twice on
> the same connection creates a name conflict for the temporary table.
>
> Also I'm unsure how the use of temporary tables will affect the
> running of the query. This function will be called up to 400 times
> by a wrapping function that needs to complete quickly (relatively -
> the calculations need to return in a few seconds). I haven't had
> chance to read much about PG temp tables yet, so I don't know how the
> implementation works. Are small tables stored in RAM, or does
> creating a temporary table always force a disk write?
Temp tables stay in RAM until they are bigger than temp_buffers. If you
need them to be big and quick, maybe it would be appropriate to use
indexes (note these count towards temp_buffers), ANALYZE, etc.
--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.
From | Date | Subject | |
---|---|---|---|
Next Message | Tomasz Rakowski | 2007-03-14 23:05:09 | database locks |
Previous Message | Joshua D. Drake | 2007-03-14 22:55:45 | Re: How to write a function that manipulates a set of results |