Take pg_attribute out of VacAttrStats
The VacAttrStats structure contained the whole Form_pg_attribute for a
column, but it actually only needs attstattarget from there. So
remove the Form_pg_attribute field and make a separate field for
attstattarget. This simplifies some code for extended statistics that
doesn't deal with a column but an expression, which had to fake up
pg_attribute rows to satisfy internal APIs. Also, we can remove some
comments that essentially said "don't look at pg_attribute directly".
Reviewed-by: Tomas Vondra <tomas.vondra@enterprisedb.com>
Discussion: https://www.postgresql.org/message-id/flat/d6069765-5971-04d3-c10d-e4f7b2e9c459%40eisentraut.org
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/c69bdf837f161ae3e699496be10215dbb2315917
Modified Files
--------------
src/backend/commands/analyze.c | 33 ++++++++----------
src/backend/statistics/extended_stats.c | 48 +++++++--------------------
src/backend/tsearch/ts_typanalyze.c | 10 +++---
src/backend/utils/adt/array_typanalyze.c | 4 +--
src/backend/utils/adt/rangetypes_typanalyze.c | 16 ++++-----
src/include/commands/vacuum.h | 12 +++----
6 files changed, 43 insertions(+), 80 deletions(-)