aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/cache/syscache.c
diff options
context:
space:
mode:
authorRobert Haas <rhaas@postgresql.org>2017-03-24 12:30:39 -0400
committerRobert Haas <rhaas@postgresql.org>2017-03-24 12:30:39 -0400
commitf120b614e070aed39586d1443193738a149a90d4 (patch)
tree2ddcc2f4ecd1a04819bdf4d0448321c8e72a5eba /src/backend/utils/cache/syscache.c
parent857ee8e391ff6654ef9dcc5dd8b658d7709d0a3c (diff)
downloadpostgresql-f120b614e070aed39586d1443193738a149a90d4.tar.gz
postgresql-f120b614e070aed39586d1443193738a149a90d4.zip
plpgsql: Don't generate parallel plans for RETURN QUERY.
Commit 7aea8e4f2daa4b39ca9d1309a0c4aadb0f7ed81b allowed a parallel plan to be generated when for a RETURN QUERY or RETURN QUERY EXECUTE statement in a PL/pgsql block, but that's a bad idea because plplgsql asks the executor for 50 rows at a time. That means that we'll always be running serially a plan that was intended for parallel execution, which is not a good idea. Fix by not requesting a parallel plan from the outset. Per discussion, back-patch to 9.6. There is a slight risk that, due to optimizer error, somebody could have a case where the parallel plan executed serially is actually faster than the supposedly-best serial plan, but the consensus seems to be that that's not sufficient justification for leaving 9.6 unpatched. Discussion: http://postgr.es/m/CA+TgmoZ_ZuH+auEeeWnmtorPsgc_SmP+XWbDsJ+cWvWBSjNwDQ@mail.gmail.com Discussion: http://postgr.es/m/CA+TgmobXEhvHbJtWDuPZM9bVSLiTj-kShxQJ2uM5GPDze9fRYA@mail.gmail.com
Diffstat (limited to 'src/backend/utils/cache/syscache.c')
0 files changed, 0 insertions, 0 deletions