pgsql: Add the ability to store inheritance-tree statistics in

Started by Tom Laneover 16 years ago1 messagescomitters
Jump to latest
#1Tom Lane
tgl@sss.pgh.pa.us

Log Message:
-----------
Add the ability to store inheritance-tree statistics in pg_statistic,
and teach ANALYZE to compute such stats for tables that have subclasses.
Per my proposal of yesterday.

autovacuum still needs to be taught about running ANALYZE on parent tables
when their subclasses change, but the feature is useful even without that.

Modified Files:
--------------
pgsql/doc/src/sgml:
catalogs.sgml (r2.214 -> r2.215)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/catalogs.sgml?r1=2.214&r2=2.215)
pgsql/src/backend/catalog:
heap.c (r1.362 -> r1.363)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/heap.c?r1=1.362&r2=1.363)
system_views.sql (r1.63 -> r1.64)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/system_views.sql?r1=1.63&r2=1.64)
pgsql/src/backend/commands:
analyze.c (r1.143 -> r1.144)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/analyze.c?r1=1.143&r2=1.144)
vacuum.c (r1.399 -> r1.400)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/vacuum.c?r1=1.399&r2=1.400)
pgsql/src/backend/executor:
nodeHash.c (r1.123 -> r1.124)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeHash.c?r1=1.123&r2=1.124)
pgsql/src/backend/nodes:
copyfuncs.c (r1.455 -> r1.456)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/copyfuncs.c?r1=1.455&r2=1.456)
outfuncs.c (r1.376 -> r1.377)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/outfuncs.c?r1=1.376&r2=1.377)
pgsql/src/backend/optimizer/plan:
createplan.c (r1.267 -> r1.268)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/createplan.c?r1=1.267&r2=1.268)
pgsql/src/backend/utils/adt:
selfuncs.c (r1.263 -> r1.264)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/selfuncs.c?r1=1.263&r2=1.264)
pgsql/src/backend/utils/cache:
lsyscache.c (r1.163 -> r1.164)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/lsyscache.c?r1=1.163&r2=1.164)
syscache.c (r1.121 -> r1.122)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/syscache.c?r1=1.121&r2=1.122)
pgsql/src/include/catalog:
catversion.h (r1.561 -> r1.562)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h?r1=1.561&r2=1.562)
indexing.h (r1.111 -> r1.112)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/indexing.h?r1=1.111&r2=1.112)
pg_statistic.h (r1.39 -> r1.40)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_statistic.h?r1=1.39&r2=1.40)
pgsql/src/include/nodes:
plannodes.h (r1.113 -> r1.114)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/plannodes.h?r1=1.113&r2=1.114)
pgsql/src/include/utils:
syscache.h (r1.75 -> r1.76)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/syscache.h?r1=1.75&r2=1.76)
pgsql/src/test/regress/expected:
rules.out (r1.153 -> r1.154)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/rules.out?r1=1.153&r2=1.154)