When working on zedstore, the developers solved the lack of support for passing column projection into the AM as explained in the zedstore/README [*]
-----8<------8<------8<-------8<------- Current table am API requires enhancement here to pass down column projection to AM. The patch showcases two different ways for the same. * For sequential scans added new beginscan_with_column_projection() API. Executor checks AM property and if it leverages column projection uses this new API else normal beginscan() API. * For index scans instead of modifying the begin scan API, added new API to specifically pass column projection list after calling begin scan to populate the scan descriptor but before fetching the tuples. -----8<------8<------8<-------8<------- Which of course requires patching also the call sites in PostgreSQL code itself to make use of these methods As this was already almost a year ago, have there been any developments in the core PostgreSQL code for supporting this ? Or is projection still supported only in FDWs ? ---------- [*] https://github.com/greenplum-db/postgres/blob/zedstore/src/backend/access/zedstore/README ----- Hannu Krosing Google Cloud - We have a long list of planned contributions and we are hiring. Contact me if interested.