• Heikki Linnakangas's avatar
    Don't reset pg_class.reltuples and relpages in VACUUM, if any pages were · dcf84099
    Heikki Linnakangas authored
    skipped. We could update relpages anyway, but it seems better to only
    update it together with reltuples, because we use the reltuples/relpages
    ratio in the planner. Also don't update n_live_tuples in pgstat.
    
    ANALYZE in VACUUM ANALYZE now needs to update pg_class, if the
    VACUUM-phase didn't do so. Added some boolean-passing to let analyze_rel
    know if it should update pg_class or not.
    
    I also moved the relcache invalidation (to update rd_targblock) from
    vac_update_relstats to where RelationTruncate is called, because
    vac_update_relstats is not called for partial vacuums anymore. It's more
    obvious to send the invalidation close to the truncation that requires it.
    
    Per report by Ned T. Crigler.
    dcf84099
analyze.c 69.5 KB