Re: PoC/WIP: Extended statistics on expressions
От | Tomas Vondra |
---|---|
Тема | Re: PoC/WIP: Extended statistics on expressions |
Дата | |
Msg-id | 2cb8a7cd-664f-8681-6ce9-790a50e3c78f@enterprisedb.com обсуждение исходный текст |
Ответ на | Re: PoC/WIP: Extended statistics on expressions (Dean Rasheed <dean.a.rasheed@gmail.com>) |
Ответы |
Re: PoC/WIP: Extended statistics on expressions
|
Список | pgsql-hackers |
On 3/25/21 2:33 PM, Dean Rasheed wrote: > On Thu, 25 Mar 2021 at 00:05, Tomas Vondra > <tomas.vondra@enterprisedb.com> wrote: >> >> here's an updated patch. 0001 > > The change to the way that CreateStatistics() records dependencies > isn't quite right -- recordDependencyOnSingleRelExpr() will not create > any dependencies if the expression uses only a whole-row Var. However, > pull_varattnos() will include whole-row Vars, and so nattnums_exprs > will be non-zero, and CreateStatistics() will not create a whole-table > dependency when it should. > > I suppose that could be fixed up by inspecting the bitmapset returned > by pull_varattnos() in more detail, but I think it's probably safer to > revert to the previous code, which matched what index_create() did. > Ah, good catch. I haven't realized recordDependencyOnSingleRelExpr works like that, so I've moved it after the whole-table dependency. Attached is an updated patch series, with all the changes discussed here. I've cleaned up the ndistinct stuff a bit more (essentially reverting back from GroupExprInfo to GroupVarInfo name), and got rid of the UpdateStatisticsForTypeChange. I've also looked at speeding up the stats_ext regression tests. The 0002 patch reduces the size of a couple of test tables, and removes a bunch of queries. I've initially mostly just copied the original tests, but we don't really need that many queries I think. This cuts the runtime about in half, so it's mostly in line with other tests. Some of these changes are in existing tests, I'll consider moving that into a separate patch applied before the main one. regards -- Tomas Vondra EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Вложения
В списке pgsql-hackers по дате отправления: