From: | David Geier <geidav(dot)pg(at)gmail(dot)com> |
---|---|
To: | Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Richard Guo <guofenglinux(at)gmail(dot)com> |
Cc: | PostgreSQL Developers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Optimize join selectivity estimation by not reading MCV stats for unique join attributes |
Date: | 2022-11-18 15:59:02 |
Message-ID: | 2a4917f7-8a4d-0094-7189-3a6dcaebad44@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 11/18/22 14:00, Tomas Vondra wrote:
> Seems fine. I wonder if we could/could introduce a new constant for 0,
> similar to ATTSTATSSLOT_NUMBERS/ATTSTATSSLOT_VALUES, instead of using a
> magic constant. Say, ATTSTATSSLOT_NONE or ATTSTATSSLOT_CHECK.
Good idea. I called it ATTSTATSSLOT_EXISTS. New patch attached.
> I don't think you can write a test for this, because there is no change
> to behavior that can be observed by the user. If one side has no MCV,
> the only difference is whether we try to load the other MCV or not.
Yeah. I thought along the lines of checking the number of pages read
when the pg_stats entry is not in syscache yet. But that seems awfully
implementation specific. So no test provided.
--
David Geier
(ServiceNow)
Attachment | Content-Type | Size |
---|---|---|
0001-Dont-read-MCV-stats-needlessly-in-join-selectivity-estimation-v3.patch | text/x-patch | 4.1 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2022-11-18 16:07:18 | Re: Optimize join selectivity estimation by not reading MCV stats for unique join attributes |
Previous Message | David G. Johnston | 2022-11-18 15:28:18 | Re: Glossary and initdb definition work for "superuser" and database/cluster |