Re: optimizing constant quals within outer joins

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Phil Frost <indigo(at)bitglue(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: optimizing constant quals within outer joins
Date: 2006-07-02 00:48:21
Message-ID: 20060702004821.GH8098@surnet.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Tom Lane wrote:
> Alvaro Herrera <alvherre(at)commandprompt(dot)com> writes:
> > I note that the rowcount is not altered by the one-time filter. Is this
> > an issue? I imagine the problem is not being able to estimate the
> > number of rows that pass the filter.
>
> That's intentional. The filter is either going to pass all or none of
> the rows, not some fraction of them. It clearly isn't very reasonable
> to guess that it will pass none of them (except if the qual is actually
> constant FALSE).
>
> > I also wonder whether it wouldn't be better in this case to apply each
> > filter to each arm of the merge join.
>
> Uh, why? For the most part, I'd think the higher you can put the filter
> in the plan tree, the better.

Huh, sorry, I had misunderstood the meaning of a _one_-time filter :-)

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2006-07-02 02:00:47 Re: ADD/DROPS INHERIT (actually INHERIT / NO INHERIT)
Previous Message Tom Lane 2006-07-01 22:55:19 Re: optimizing constant quals within outer joins