Re: Explaining functions.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Merlin Moncure <mmoncure(at)gmail(dot)com>
Cc: "Hartman, Matthew" <Matthew(dot)Hartman(at)krcc(dot)on(dot)ca>, pgsql-general(at)postgresql(dot)org
Subject: Re: Explaining functions.
Date: 2009-06-23 14:04:32
Message-ID: 13651.1245765872@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Merlin Moncure <mmoncure(at)gmail(dot)com> writes:
> On Tue, Jun 23, 2009 at 8:03 AM, Hartman,
> Matthew<Matthew(dot)Hartman(at)krcc(dot)on(dot)ca> wrote:
>> Is there a recommended approach when trying to use EXPLAIN on a
>> function? Specifically, a function that is more than the typical SELECT
>> statement or tiny loop. The one in question that I'm hoping to optimize
>> is around 250 lines.

> What I normally do for benchmarking of complex functions is to
> sprinkle the source with "raise notice '%', timeofday();" to figure
> out where the bottlenecks are. Following that, I micro-optimize
> problem queries or expressions outside of the function body in psql.

There was some discussion once of using the same infrastructure the
plpgsql debugger uses to build a plpgsql profiler. That would help
automate the first part of this, at least. Anybody know the status
of that project?

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2009-06-23 14:11:56 Re: Slight change in query leads to unexpected change in query plan
Previous Message Jack Orenstein 2009-06-23 13:54:32 Re: Slight change in query leads to unexpected change in query plan