Re: extended stats on partitioned tables
| От | Tomas Vondra |
|---|---|
| Тема | Re: extended stats on partitioned tables |
| Дата | |
| Msg-id | d11ae731-4366-ee5f-9ffd-0bd61f5e94a6@enterprisedb.com обсуждение исходный текст |
| Ответ на | Re: extended stats on partitioned tables (Justin Pryzby <pryzby@telsasoft.com>) |
| Список | pgsql-hackers |
On 12/12/21 22:32, Justin Pryzby wrote: > On Sun, Dec 12, 2021 at 05:17:10AM +0100, Tomas Vondra wrote: >> The one thing bugging me a bit is that the regression test checks only a >> GROUP BY query. It'd be nice to add queries testing MCV/dependencies >> too, but that seems tricky because most queries will use per-partitions >> stats. > > You mean because the quals are pushed down to the scan node. > > Does that indicate a deficiency ? > > If extended stats are collected for a parent table, selectivity estimates based > from the parent would be better; but instead we use uncorrected column > estimates from the child tables. > > From what I see, we could come up with a way to avoid the pushdown, involving > volatile functions/foreign tables/RLS/window functions/SRF/wholerow vars/etc. > > But would it be better if extended stats objects on partitioned tables were to > collect stats for both parent AND CHILD ? I'm not sure. Maybe that's the > wrong solution, but maybe we should still document that extended stats on > (empty) parent tables are often themselves not used/useful for selectivity > estimates, and the user should instead (or in addition) create stats on child > tables. > > Or, maybe if there's no extended stats on the child tables, stats on the parent > table should be consulted ? > Maybe, but that seems like a mostly separate improvement. At this point I'm interested only in testing the behavior implemented in the current patches. regards -- Tomas Vondra EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-hackers по дате отправления: