]> granicus.if.org Git - postgresql/commit
Fix incorrect logic for choosing the next Parallel Append subplan
authorAlvaro Herrera <alvherre@alvh.no-ip.org>
Mon, 9 Apr 2018 20:23:49 +0000 (17:23 -0300)
committerAlvaro Herrera <alvherre@alvh.no-ip.org>
Mon, 9 Apr 2018 20:23:49 +0000 (17:23 -0300)
commit468abb8f7a69c68341b6fc2797166d1079acb1b1
tree0a75401e60c706b9a600eba95ac50e6474649cff
parentd7754822c52ccb6dfb1c29607ae352c2028979d2
Fix incorrect logic for choosing the next Parallel Append subplan

In 499be013de support for pruning unneeded Append subnodes was added.
The logic in that commit was not correctly checking if the next subplan
was in fact a valid subplan. This could cause parallel workers processes
to be given a subplan to work on which didn't require any work.

Per code review following an otherwise unexplained regression failure in
buildfarm member Pademelon.  (We haven't been able to reproduce the
failure, so this is a bit of a blind fix in terms of whether it'll
actually fix it; but it is a clear bug nonetheless).

In passing, also add a comment to explain what first_partial_plan means.

Author: David Rowley
Discussion: https://postgr.es/m/CAKJS1f_E5r05hHUVG3UmCQJ49DGKKHtN=SHybD44LdzBn+CJng@mail.gmail.com
src/backend/executor/nodeAppend.c
src/include/nodes/plannodes.h