Re: Avoiding duplication of code via views -- slower? How do people typically do this? - Mailing list pgsql-general

From Tom Lane
Subject Re: Avoiding duplication of code via views -- slower? How do people typically do this?
Date
Msg-id 16227.1360960296@sss.pgh.pa.us
Whole thread Raw
In response to Re: Avoiding duplication of code via views -- slower? How do people typically do this?  (Joe Van Dyk <joe@tanga.com>)
List pgsql-general
Joe Van Dyk <joe@tanga.com> writes:
> On Fri, Feb 15, 2013 at 7:43 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> Try without the useless "is true" bits.

> Huh, that did do the trick. Why does "is true" affect the plan?

Because "(x = y) IS TRUE" isn't the same as "x = y".  (The behavior for
nulls is different.)  And the planner only knows about using the latter
type of condition for indexscans.  Since you need it to convert the
end_at condition into an indexscan to get a fast plan, you lose.

It's conceivable that we could teach the planner about this case, but
I haven't seen enough people doing that to make me think it's worth the
code space and planner cycles.

            regards, tom lane

pgsql-general by date:

Previous
From: Ian Harding
Date:
Subject: Re: pg_upgrade
Next
From: Merlin Moncure
Date:
Subject: Re: Avoiding duplication of code via views -- slower? How do people typically do this?