Allow CustomScan providers to say whether they support projections. Previously, all CustomScan providers had to support projections, but there may be cases where this is inconvenient. Add a flag bit to say if it's supported.
Important item for the release notes: this is non-backwards-compatible since the default is now to assume that CustomScan providers can't project, instead of assuming that they can. It's fail-soft, but could result in visible performance penalties due to adding unnecessary Result nodes. Sven Klemm, reviewed by Aleksander Alekseev; some cosmetic fiddling by me. Discussion: https://postgr.es/m/camcrgp1kyakoz6c8akhndjxjhq1dejenp+6knt3kxprjnts...@mail.gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/955b3e0f9269639fb916cee3dea37aee50b82df0 Modified Files -------------- doc/src/sgml/custom-scan.sgml | 13 ++++++++++--- src/backend/executor/execAmi.c | 17 +++++------------ src/backend/optimizer/plan/createplan.c | 8 ++++++++ src/include/nodes/extensible.h | 4 +++- 4 files changed, 26 insertions(+), 16 deletions(-)
