On Wed, 25 Mar 2026 at 16:15, Andres Freund <[email protected]> wrote: > Code wise, the most immediately noticeable things are
> 3) verify_compact_attribute(), pretty spread around We do now have TupleDescFinalize(), where those could be checked just once rather than on each call to TupleDescCompactAttr(). That's not quite as watertight a guarantee as someone could change the FormData_pg_attribute after TupleDescFinalize(). Just doing it in TupleDescFinalize() would at least still catch the places where people forget to call populate_compact_attribute() before TupleDescFinalize(). I would have expected this to be a little less overhead now since d8a859d22 removed the calls to TupleDescCompactAttr() in the main deforming routine. Maybe I should just make that change in the other deformers...? Do you have an idea of which callers of verify_compact_attribute() are causing the most overhead? David
