Re: Estimation issue with partitioned tables

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Josh Berkus <josh(at)agliodbs(dot)com>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: Estimation issue with partitioned tables
Date: 2010-03-03 17:12:40
Message-ID: 603c8f071003030912k5750abadif64cb36d67ab99ae@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On Sun, Feb 28, 2010 at 3:19 PM, Josh Berkus <josh(at)agliodbs(dot)com> wrote:
> All,
>
> I'm seeing in a production database two problems with query rowcount
> estimation:
>
> (1) Estimates for the number of rows in an outer join do not take into
> account any constraint exclusion (CE) in operation.
>
> (2) Row estimates do not take into account if the unique indexes on the
> child partitions are different from the master partition (the append
> node).  This is often true, because the key to the master is ( key, ce
> column) and for the children is just ( key ).
>
> The result is that if you do a series of outer joins using the CE
> criterion against partitioned tables, the row estimates you get will be
> several orders of magnitude too high ... and the subsequent query plan
> far too pessimistic.
>
> Anyone else seeing this?  Do any of the 9.0 patches address the above
> issues?

I feel like I've seen these way-too-high row estimates in some other
postings to -performance, but I'm not sure if it was the same issue.
You don't by chance have a RTC? I don't think it's likely fixed in 9.0
but it would be interesting to investigate.

...Robert

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Scott Marlowe 2010-03-03 18:32:50 Re: 10K vs 15k rpm for analytics
Previous Message Robert Haas 2010-03-03 17:09:38 Re: dbt2 performance