From: | Gurjeet Singh <singh(dot)gurjeet(at)gmail(dot)com> |
---|---|
To: | Robert Haas <robertmhaas(at)gmail(dot)com> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: BUG #5358: Throwing unexpected ERROR |
Date: | 2010-03-03 13:48:28 |
Message-ID: | 65937bea1003030548p68a04812p96da41406ce2c363@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
On Wed, Mar 3, 2010 at 8:37 AM, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> On Wed, Mar 3, 2010 at 7:29 AM, Gurjeet Singh <singh(dot)gurjeet(at)gmail(dot)com>
> wrote:
> > I just realized that it is the subquery pull-up that is leading to this
> > problem, not predicate push-down. Sleeping over it does really help I
> guess
> > :)
> >
> > So instead of the LIMIT 1000, OFFSET 0 clause is the right choice for
> > preventing subquery pull-up without affecting the results.
> >
> > I don't think the optimizer has the push-down capabiity; I may be wrong.
>
> Maybe I'm just dense, but I don't understand what you're complaining
> about here. The SELECT DISTINCT already acts as an optimization
> fence, so why would you need another one? And what problem would you
> expect it to solve?
>
>
I am complaining about the ERROR when I don't specify OFFSET or LIMIT.
The query isn't relevant. It is there just to illustrate the fact that two
supposedly equivalent forms of a query are not treated equivalent after all
by Postgres.
You don't put that OFFSET clause, you get an ERROR. You put in that OFFSET
clause and you get proper results.
I hope my complain is clearer now.
Best regards,
--
gurjeet.singh
@ EnterpriseDB - The Enterprise Postgres Company
http://www.enterprisedb.com
singh(dot)gurjeet(at){ gmail | yahoo }.com
Twitter/Skype: singh_gurjeet
Mail sent from my BlackLaptop device
From | Date | Subject | |
---|---|---|---|
Next Message | Oleg Serov | 2010-03-03 13:56:33 | Re: Bug in triggers |
Previous Message | Robert Haas | 2010-03-03 13:37:49 | Re: BUG #5358: Throwing unexpected ERROR |