Skip to content

Commit 318730c

Browse files
authored
Merge pull request pgexperts#13 from pgexperts/fix_for_case
Style and capitalization support update
2 parents 1376b44 + 53c01a2 commit 318730c

File tree

2 files changed

+51
-36
lines changed

2 files changed

+51
-36
lines changed

vacuum/last_autovacuum.sql

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,23 @@
1-
-- Show last autovacuum by table size descending.
2-
select
3-
pg_class.relname,
4-
pg_namespace.nspname,
5-
pg_size_pretty(pg_total_relation_size(pg_namespace.nspname::text || '.' || pg_class.relname::text)),
6-
pg_stat_all_tables.last_autovacuum,
7-
pg_relation_size(pg_namespace.nspname::text || '.' || pg_class.relname::text)
8-
from
9-
pg_class
10-
join pg_namespace
11-
on pg_class.relnamespace = pg_namespace.oid
12-
join pg_stat_all_tables
13-
on (pg_class.relname = pg_stat_all_tables.relname AND pg_namespace.nspname = pg_stat_all_tables.schemaname)
14-
where
15-
pg_namespace.nspname not in ('pg_toast')
16-
order by
17-
5 desc
1+
-- Show last vacuum or autovacuum by table size descending.
2+
SELECT pg_class.relname
3+
, pg_namespace.nspname
4+
, pg_size_pretty(pg_total_relation_size(pg_class.oid))
5+
,
6+
CASE
7+
WHEN COALESCE(last_vacuum,'1/1/1000') >
8+
COALESCE(last_autovacuum,'1/1/1000') THEN
9+
pg_stat_all_tables.last_vacuum
10+
ELSE last_autovacuum
11+
END AS last_vacuumed
12+
, pg_relation_size(pg_class.oid)
13+
FROM pg_class
14+
JOIN pg_namespace
15+
ON pg_class.relnamespace = pg_namespace.oid
16+
JOIN pg_stat_all_tables
17+
ON (
18+
pg_class.relname = pg_stat_all_tables.relname
19+
AND pg_namespace.nspname = pg_stat_all_tables.schemaname
20+
)
21+
WHERE pg_namespace.nspname not in ('pg_toast')
22+
ORDER BY pg_relation_size(pg_class.oid) DESC
1823
;
Lines changed: 29 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,29 @@
1-
-- Show last autovacuum by table size descending.
2-
select
3-
pg_class.relname,
4-
pg_namespace.nspname,
5-
pg_size_pretty(pg_total_relation_size(pg_namespace.nspname::text || '.' || pg_class.relname::text)),
6-
pg_stat_all_tables.last_autovacuum,
7-
pg_stat_all_tables.last_autoanalyze,
8-
pg_relation_size(pg_namespace.nspname::text || '.' || pg_class.relname::text)
9-
from
10-
pg_class
11-
join pg_namespace
12-
on pg_class.relnamespace = pg_namespace.oid
13-
join pg_stat_all_tables
14-
on (pg_class.relname = pg_stat_all_tables.relname AND pg_namespace.nspname = pg_stat_all_tables.schemaname)
15-
where
16-
pg_namespace.nspname not in ('pg_toast')
17-
order by
18-
5 desc
19-
;
1+
-- Show last autovacuum and autoanalyze by table size descending.
2+
SELECT pg_class.relname
3+
, pg_namespace.nspname
4+
, pg_size_pretty(pg_total_relation_size(pg_class.oid))
5+
,
6+
CASE
7+
WHEN COALESCE(last_vacuum,'1/1/1000') >
8+
COALESCE(last_autovacuum,'1/1/1000') THEN
9+
pg_stat_all_tables.last_vacuum
10+
ELSE last_autovacuum
11+
END AS last_vacuumed
12+
,
13+
CASE
14+
WHEN COALESCE(last_analyze,'1/1/1000') >
15+
COALESCE(last_autoanalyze,'1/1/1000') THEN
16+
pg_stat_all_tables.last_analyze
17+
ELSE last_autoanalyze
18+
END AS last_analyzed
19+
, pg_relation_size(pg_class.oid)
20+
FROM pg_class
21+
JOIN pg_namespace
22+
ON pg_class.relnamespace = pg_namespace.oid
23+
JOIN pg_stat_all_tables
24+
ON (
25+
pg_class.relname = pg_stat_all_tables.relname
26+
AND pg_namespace.nspname = pg_stat_all_tables.schemaname
27+
)
28+
WHERE pg_namespace.nspname NOT IN ('pg_toast')
29+
ORDER BY pg_relation_size(pg_class.oid) DESC ;

0 commit comments

Comments
 (0)