(2018/07/27 4:50), Robert Haas wrote:
On Thu, Jul 26, 2018 at 1:14 AM, Etsuro Fujita
<fujita.ets...@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().

Agreed.  Thanks for the explanation!

(I think that at least currently, there is no need for the Gather and GatherMerge cases in reparameterize_path_by_child, but I don't object to keeping those as-is there.)

Best regards,
Etsuro Fujita

Reply via email to