Re: Avoiding bad prepared-statement plans.

From: Jeroen Vermeulen <jtv(at)xs4all(dot)nl>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Greg Stark <gsstark(at)mit(dot)edu>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Bart Samwel <bart(at)samwel(dot)tk>, Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Avoiding bad prepared-statement plans.
Date: 2010-02-26 02:48:05
Message-ID: 4B873665.20208@xs4all.nl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Robert Haas wrote:
> On Wed, Feb 17, 2010 at 5:52 PM, Jeroen Vermeulen <jtv(at)xs4all(dot)nl> wrote:
>> I may have cut this out of my original email for brevity... my impression is
>> that the planner's estimate is likely to err on the side of scalability, not
>> best-case response time; and that this is more likely to happen than an
>> optimistic plan going bad at runtime.
>
> Interestingly, most of the mistakes that I have seen are in the
> opposite direction.

I guess there's not much we can do about those, except decide after
running that it's worth optimizing for specific values.

>> Yeb points out a devil in the details though: the cost estimate is unitless.
>> We'd have to have some orders-of-magnitude notion of how the estimates fit
>> into the picture of real performance.
>
> I'm not sure to what extent you can assume that the cost is
> proportional to the execution time. I seem to remember someone
> (Peter?) arguing that they're not related by any fixed ratio, partly
> because things like page costs vs. cpu costs didn't match physical
> reality, and that in fact some attempts to gather better empirically
> better values for things like random_page_cost and seq_page_cost
> actually ended up making the plans worse rather than better. It would
> be nice to see some research in this area...

Getting representative workloads and machine configurations may make
that hard. :/

But all we really want is a check for really obscene costs, as an extra
stopgap so we don't have to wait for the thing to execute before we
decide it's too costly. Surely there must be some line we can draw.

Jeroen

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2010-02-26 02:49:10 Re: visibility maps and heap_prune
Previous Message Bruce Momjian 2010-02-26 02:43:44 Re: Why isn't stats_temp_directory automatically created?