Allow parallel query for prepared statements with generic plans. This was always intended to work, but due to an oversight in max_parallel_hazard_walker, it didn't. In testing, we missed the fact that it was only working for custom plans, where the parameter value has been substituted for the parameter itself early enough that everything worked. In a generic plan, the Param node survives and must be treated as parallel-safe. SerializeParamList provides for the transmission of parameter values to workers.
Amit Kapila with help from Kuntal Ghosh. Some changes by me. Discussion: http://postgr.es/m/caa4ek1+_buzrmvceua5eqnm4co9daxdm5hpaoe2j19epbr9...@mail.gmail.com Branch ------ REL_10_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/a87c0c7631d2ec738e78b909f5dcea16ea1e832f Modified Files -------------- src/backend/optimizer/util/clauses.c | 8 +++- src/pl/plpgsql/src/pl_exec.c | 63 +++++++++++++++++++-------- src/test/regress/expected/select_parallel.out | 20 +++++++++ src/test/regress/sql/select_parallel.sql | 6 +++ 4 files changed, 76 insertions(+), 21 deletions(-) -- Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-committers