Avoid passing function pointers across process boundaries.
authorTom Lane
Sat, 15 Apr 2017 20:23:27 +0000 (16:23 -0400)
committerTom Lane
Sat, 15 Apr 2017 20:23:27 +0000 (16:23 -0400)
commit9c225acf0b97a7a3a5ca1a12ee0e89c98cf16442
tree72ce9833271db97603c1847b762f387dd2ec978f
parentd51279433cdf30d62e92bb5f5f1790e9014a0342
Avoid passing function pointers across process boundaries.

This back-patches commit 32470825d36d99a81347ee36c181d609c952c061
into 9.6, primarily to make buildfarm member culicidae happy.
Unlike the HEAD patch, avoid changing the existing API of
CreateParallelContext; instead we just switch to using
CreateParallelContextForExternalFunction, even for core functions.

Petr Jelinek, with a bunch of basically-cosmetic adjustments by me

Discussion: https://postgr.es/m/548f9c1d-eafa-e3fa-9da8-f0cc2f654e60@2ndquadrant.com
src/backend/access/transam/README.parallel
src/backend/access/transam/parallel.c
src/backend/executor/execParallel.c
src/backend/postmaster/bgworker.c
src/include/executor/execParallel.h