On Thu, Oct 5, 2017 at 4:11 PM, Amit Khandekar <amitdkhan...@gmail.com> wrote: > > Ok. How about removing pa_all_partial_subpaths altogether , and > instead of the below condition : > > /* > * If all the child rels have partial paths, and if the above Parallel > * Append path has a mix of partial and non-partial subpaths, then consider > * another Parallel Append path which will have *all* partial subpaths. > * If enable_parallelappend is off, make this one non-parallel-aware. > */ > if (partial_subpaths_valid && !pa_all_partial_subpaths) > ...... > > Use this condition : > if (partial_subpaths_valid && pa_nonpartial_subpaths != NIL) > ...... >
Sounds good to me. One minor point: + if (!node->as_padesc) + { + /* + */ + if (!exec_append_seq_next(node)) + return ExecClearTuple(node->ps.ps_ResultTupleSlot); + } It seems either you want to add a comment in above part of patch or you just left /**/ mistakenly. > ---- > > > Regarding a mix of partial and non-partial paths, I feel it always > makes sense for the leader to choose the partial path. > Okay, but why not cheapest partial path? -- With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers