Allow CustomScan providers to say whether they support projections.
Tom Lane <tgl@sss.pgh.pa.us>
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+6KNT3KxPrjNtsrDg@mail.gmail.com
Files
| Path | Change | +/− |
|---|---|---|
| doc/src/sgml/custom-scan.sgml | modified | +10 −3 |
| src/backend/executor/execAmi.c | modified | +5 −12 |
| src/backend/optimizer/plan/createplan.c | modified | +8 −0 |
| src/include/nodes/extensible.h | modified | +3 −1 |
Documentation touched
Discussion
- [PATCH] Allow CustomScan nodes to signal projection support 3 messages · 2021-03-26 → 2021-07-06