aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/xml.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2009-06-06 22:13:52 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2009-06-06 22:13:52 +0000
commit32ea236361ebedbb27b52a865d017b2858203812 (patch)
treebdecc221c3a5680b03adf19e26beaf098036fe63 /src/backend/utils/adt/xml.c
parent4334695b3026b23b1aeff3275536401335536ec9 (diff)
downloadpostgresql-32ea236361ebedbb27b52a865d017b2858203812.tar.gz
postgresql-32ea236361ebedbb27b52a865d017b2858203812.zip
Improve the IndexVacuumInfo/IndexBulkDeleteResult API to allow somewhat sane
behavior in cases where we don't know the heap tuple count accurately; in particular partial vacuum, but this also makes the API a bit more useful for ANALYZE. This patch adds "estimated_count" flags to both structs so that an approximate count can be flagged as such, and adjusts the logic so that approximate counts are not used for updating pg_class.reltuples. This fixes my previous complaint that VACUUM was putting ridiculous values into pg_class.reltuples for indexes. The actual impact of that bug is limited, because the planner only pays attention to reltuples for an index if the index is partial; which probably explains why beta testers hadn't noticed a degradation in plan quality from it. But it needs to be fixed. The whole thing is a bit messy and should be redesigned in future, because reltuples now has the potential to drift quite far away from reality when a long period elapses with no non-partial vacuums. But this is as good as it's going to get for 8.4.
Diffstat (limited to 'src/backend/utils/adt/xml.c')
0 files changed, 0 insertions, 0 deletions