From: | David Rowley <dgrowleyml(at)gmail(dot)com> |
---|---|
To: | Andy Fan <zhihuifan1213(at)163(dot)com> |
Cc: | PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>, pgsql-hackers(at)lists(dot)postgresql(dot)org |
Subject: | Re: a wrong index choose when statistics is out of date |
Date: | 2024-03-07 11:28:49 |
Message-ID: | CAApHDvrhKaeFzw7KczR13s=3OOb7SSjLHM7-cBpp492=0P9RSA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Thu, 7 Mar 2024 at 23:40, Andy Fan <zhihuifan1213(at)163(dot)com> wrote:
>
> David Rowley <dgrowleyml(at)gmail(dot)com> writes:
> > If you don't want the planner to use the statistics for the column why
> > not just do the following?
>
> Acutally I didn't want the planner to ignore the statistics totally, I
> want the planner to treat the "Const" which probably miss optimizer part
> average, which is just like what we did for generic plan for the blow
> query.
I'm with Andrei on this one and agree with his "And it is just luck
that you've got the right answer".
I think we should fix the general problem of the planner not choosing
the better index. I understand you've had a go at that before, but I
didn't think fudging the costs was the right fix to coax the planner
into the safer choice.
I'm not personally interested in any bandaid fixes for this. I'd
rather see us come up with a long-term solution that just makes things
better.
I also understand you're probably frustrated and just want to make
something better. However, it's not like it's a new problem. The more
general problem of the planner making risky choices outdates both of
our time spent working on PostgreSQL, so I don't think a hasty
solution that fixes some small subset of the problem is that helpful.
David
From | Date | Subject | |
---|---|---|---|
Next Message | Richard Guo | 2024-03-07 11:38:50 | Re: Properly pathify the union planner |
Previous Message | Nazir Bilal Yavuz | 2024-03-07 11:19:16 | Re: Change prefetch and read strategies to use range in pg_prewarm ... and raise a question about posix_fadvise WILLNEED |