Tuning queries inside a function

From: Mike Nolan <nolan(at)gw(dot)tssi(dot)com>
To: pgsql-general(at)postgresql(dot)org (pgsql general list)
Subject: Tuning queries inside a function
Date: 2005-04-29 17:32:26
Message-ID: 200504291732.j3THWRcj002464@gw.tssi.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

What's the best way to tune the queries inside a user function?

I have a fairly complicated function that may make as many as 10 queries
on several tables, some of which involve multiple joins.

Further, in the PHP program that needs this function, it can be called
as many as 400,000 times. The last time I ran the program in production
mode, it took 35 hours to complete! Since then I've done some reworking
to avoid the function calls about half of the time, that cut the run time
down to about 16 hours, but that's still longer than I'd like.

I need to find out if the function can be tuned further, but 'explain'
doesn't really tell much about what's happening inside the function.

Any ideas on how to tune a user function?
--
Mike Nolan

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2005-04-29 17:34:49 Re: [GENERAL] Returning a RECORD, not SETOF RECORD
Previous Message Tom Lane 2005-04-29 17:26:04 Re: Increasing statistics results in worse estimates