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


Reply via email to