pgsql: Improve performance of partition pruning remapping a little.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Improve performance of partition pruning remapping a little.
Date: 2018-11-15 18:34:22
Message-ID: E1gNMT8-0005NW-HS@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Improve performance of partition pruning remapping a little.

ExecFindInitialMatchingSubPlans has to update the PartitionPruneState's
subplan mapping data to account for the removal of subplans it prunes.
However, that's only necessary if run-time pruning will also occur,
so we can skip it when that won't happen, which should result in not
needing to do the remapping in many cases. (We now need it only when
some partitions are potentially startup-time prunable and others are
potentially run-time prunable, which seems like an unusual case.)

Also make some marginal performance improvements in the remapping
itself. These will mainly win if most partitions got pruned by
the startup-time pruning, which is perhaps a debatable assumption
in this context.

Also fix some bogus comments, and rearrange code to marginally
reduce space consumption in the executor's query-lifespan context.

David Rowley, reviewed by Yoshikazu Imai

Discussion: https://postgr.es/m/CAKJS1f9+m6-di-zyy4B4AGn0y1B9F8UKDRigtBbNviXOkuyOpw@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/34c9e455d0efcada8821ffaab61741c2e1153458

Modified Files
--------------
src/backend/executor/execPartition.c | 99 ++++++++++++++++-----------
src/test/regress/expected/partition_prune.out | 50 ++++++++++++++
src/test/regress/sql/partition_prune.sql | 28 ++++++++
3 files changed, 138 insertions(+), 39 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Andres Freund 2018-11-15 19:38:44 pgsql: Make reformat-dat-files, reformat-dat-files VPATH safe.
Previous Message Alvaro Herrera 2018-11-15 15:33:35 Re: pgsql: Add flag values in WAL description to all heap records