May 2018
Intermediate to advanced
576 pages
30h 25m
English
We add conditional commands to vartest.sql resulting in the following script:
SELECT schemaname, relname, n_dead_tup, n_live_tup, n_dead_tup > 0 AS needs_vacuumFROM pg_stat_user_tablesORDER BY n_dead_tup DESCLIMIT 1\gset\if :needs_vacuum\qecho Running VACUUM on table :"relname" in schema :"schemaname"\qecho Rows before: :n_dead_tup dead, :n_live_tup liveVACUUM ANALYZE :schemaname.:relname;\qecho Waiting 1 second...SELECT pg_sleep(1);SELECT n_dead_tup AS n_dead_tup_now, n_live_tup AS n_live_tup_nowFROM pg_stat_user_tablesWHERE schemaname = :'schemaname' AND relname = :'relname'\gset\qecho Rows after: :n_dead_tup_now dead, :n_live_tup_now live\else\qecho Skipping VACUUM on table :"relname" in schema :"schemaname"\endif