Re: print_path is missing GatherMerge and CustomScan support

Robert Haas <robertmhaas@gmail.com>

From: Robert Haas <robertmhaas@gmail.com>
To: Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp>
Cc: Ashutosh Bapat <ashutosh.bapat@enterprisedb.com>, Michael Paquier <michael@paquier.xyz>, Masahiko Sawada <sawada.mshk@gmail.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2018-07-26T19:50:48Z
Lists: pgsql-hackers
On Thu, Jul 26, 2018 at 1:14 AM, Etsuro Fujita
<fujita.etsuro@lab.ntt.co.jp> wrote:
> because we currently don't consider gathering partial child-scan or
> child-join paths.  I think we might consider that in future, though.

You generally want to put the Gather node as high up in the plan tree
as possible.  I think the only case in which this is beneficial is if
you can't put the Gather or Gather Merge node above the Append because
only some of the children are parallel-safe.  In that case, a separate
Gather per child can be better than no parallelism at all.  It's a
rare case, but it can happen. Actually, I thought we had code for this
already: see the end of apply_scanjoin_target_to_paths().

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Commits

  1. Fix print of Path nodes when using OPTIMIZER_DEBUG

  2. Fix re-parameterize of MergeAppendPath