Thread: pgsql: Allow executor startup pruning to prune all child nodes.

pgsql: Allow executor startup pruning to prune all child nodes.

From
Tom Lane
Date:
Allow executor startup pruning to prune all child nodes.

Previously, if the startup pruning logic proved that all child nodes
of an Append or MergeAppend could be pruned, we still kept one, just
to keep EXPLAIN from failing.  The previous commit removed the
ruleutils.c limitation that required this kluge, so drop it.  That
results in less-confusing EXPLAIN output, as per a complaint from
Yuzuko Hosoya.

David Rowley

Discussion: https://postgr.es/m/001001d4f44b$2a2cca50$7e865ef0$@lab.ntt.co.jp

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/5935917ce59e2e613ac7a4b54ed49a7b9f8f28ac

Modified Files
--------------
src/backend/executor/nodeAppend.c             | 42 ++++----------
src/backend/executor/nodeMergeAppend.c        | 30 ++--------
src/include/nodes/execnodes.h                 |  3 -
src/test/regress/expected/partition_prune.out | 83 ++++++++++++++-------------
src/test/regress/sql/partition_prune.sql      | 15 +++--
5 files changed, 69 insertions(+), 104 deletions(-)