Hi Denis, Amit, and Tatsuya, I have been following this thread, especially the recent discussion around filter_attrs/output_attrs, getcolumnattr(Bitmapset), and staged materialization.
I am considering working on a narrow, standalone piece: derive the attributes needed by an ordinary SeqScan (output plus quals) during executor initialization, and make that scan-lifetime information available at scan setup. The initial scope would be SeqScan only, with no batch API implementation, predicate/limit pushdown, index or bitmap scans, or DML paths. Before starting, I wanted to check for overlap: 1. Is anyone already implementing the TupleBatchRequest / filter_attrs/output_attrs or getcolumnattr(Bitmapset) direction? 2. Would a standalone pre-batching patch that provides required attributes at scan setup be useful, or should this be designed only as part of the slot batch interface? 3. If standalone work makes sense, would you prefer passing the request to beginscan(), or attaching it to the scan slot or descriptor? I saw Amit's earlier point that this is scan-lifetime state and can be developed independently of returning batches, but the later slot-based discussion appears to overlap, so I wanted to coordinate before writing a patch. Thanks, Xiaoyu
