]> granicus.if.org Git - postgresql/commit
Fix regression in parallel planning against inheritance tables.
authorRobert Haas <rhaas@postgresql.org>
Tue, 14 Mar 2017 18:33:14 +0000 (14:33 -0400)
committerRobert Haas <rhaas@postgresql.org>
Tue, 14 Mar 2017 18:33:14 +0000 (14:33 -0400)
commit2609e91fcf9dcf36af40cd0c5b755dccf6057df6
treeaca849f07776f6f31a1ea06ef4c90497d27883d1
parentc11453ce0aeaa377cbbcc9a3fc418acb94629330
Fix regression in parallel planning against inheritance tables.

Commit 51ee6f3160d2e1515ed6197594bda67eb99dc2cc accidentally changed
the behavior around inheritance hierarchies; before, we always
considered parallel paths even for very small inheritance children,
because otherwise an inheritance hierarchy with even one small child
wouldn't be eligible for parallelism.  That exception was inadverently
removed; put it back.

In passing, also adjust the degree-of-parallelism comptuation for
index-only scans not to consider the number of heap pages fetched.
Otherwise, we'll avoid parallel index-only scans on tables that are
mostly all-visible, which isn't especially logical.

Robert Haas and Amit Kapila, per a report from Ashutosh Sharma.

Discussion: http://postgr.es/m/CAE9k0PmgSoOHRd60SHu09aRVTHRSs8s6pmyhJKWHxWw9C_x+XA@mail.gmail.com
src/backend/optimizer/path/allpaths.c
src/backend/optimizer/path/costsize.c
src/include/optimizer/paths.h