Re: Query with high planning time at version 11.1 compared versions 10.5 and 11.0
Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp>
From: Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp>
To: Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>
Cc: Amit Langote <amitlangote09@gmail.com>,
Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>,
Alvaro Herrera <alvherre@2ndquadrant.com>,
Justin Pryzby <pryzby@telsasoft.com>, sanyo.moura@tatic.net,
Jeff Janes <jeff.janes@gmail.com>,
David Rowley <david.rowley@2ndquadrant.com>,
Robert Haas <robertmhaas@gmail.com>,
pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2019-01-11T11:10:44Z
Lists: pgsql-hackers, pgsql-performance
(2019/01/11 13:49), Amit Langote wrote: > On 2019/01/11 11:21, Etsuro Fujita wrote: >> (2019/01/10 21:23), Amit Langote wrote: >>> On Thu, Jan 10, 2019 at 6:49 PM Ashutosh Bapat >>> <ashutosh.bapat.oss@gmail.com> wrote: >>>> Though this will solve a problem for performance when partition-wise >>>> join is not possible, we still have the same problem when >>>> partition-wise join is possible. And that problem really happens >>>> because our inheritance mechanism requires expression translation from >>>> parent to child everywhere. That consumes memory, eats CPU cycles and >>>> generally downgrades performance of partition related query planning. I >>>> think a better way would be to avoid these translations and use Parent >>>> var to represent a Var of the child being dealt with. That will be a >>>> massive churn on inheritance based planner code, but it will improve >>>> planning time for queries involving thousands of partitions. >>> >>> Yeah, it would be nice going forward to overhaul inheritance planning >>> such that parent-to-child Var translation is not needed, especially >>> where no pruning can occur or many partitions remain even after >>> pruning. >> >> I agree on that point, but I think that's an improvement for a future >> release rather than a fix for the issue reported on this thread. > > Agreed. Cool! > Improving planning performance for large number of partitions > even in the absence of pruning is a good goal to pursue for future > versions, as is being discussed in some other threads [1]. Yeah, we have a lot of challenges there. Thanks for sharing the info! Best regards, Etsuro Fujita
Commits
-
Postpone generating tlists and EC members for inheritance dummy children.
- b10e3bba8673 11.2 landed
- 8d8dcead1295 12.0 landed
-
Allow direct lookups of AppendRelInfo by child relid
- 7d872c91a3f9 11.0 cited