>From: Tom Lane <tgl@sss.pgh.pa.us> >Sent: Monday, February 7, 2022 8:02 PM >To: Lars Aksel Opsahl <Lars.Opsahl@nibio.no> >Cc: Vijaykumar Jain <vijaykumarjain.github@gmail.com>; Pgsql Performance <pgsql-performance@lists.postgresql.org> >Subject: Re: slow "select count(*) from information_schema.tables;" in some cases > >Lars Aksel Opsahl <Lars.Opsahl@nibio.no> writes: >>> SELECT relname, pg_size_pretty(pg_relation_size(C.oid)) FROM pg_class C LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace) WHERE nspname = 'pg_catalog' ORDER BY 2 DESC LIMIT 20; can you show the output of this query > >"ORDER BY 2" is giving you a textual sort of the sizes, which is entirely >unhelpful. Try > >SELECT relname, pg_size_pretty(pg_relation_size(C.oid)) FROM pg_class C LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace) WHERE nspname = 'pg_catalog' ORDER BY pg_relation_size(C.oid) DESC LIMIT 20; > > regards, tom lane > Hi
Then pg_attribute show up yes.
I have to vacuum full later when server is free.
SELECT relname, pg_size_pretty(pg_relation_size(C.oid)) FROM pg_class C LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace) WHERE nspname = 'pg_catalog' ORDER BY pg_relation_size(C.oid) DESC LIMIT 20; relname | pg_size_pretty -----------------------------------+---------------- pg_largeobject | 17 GB pg_attribute | 1452 MB pg_statistic | 1103 MB pg_class | 364 MB pg_attribute_relid_attnam_index | 307 MB pg_depend | 285 MB pg_largeobject_loid_pn_index | 279 MB pg_attribute_relid_attnum_index | 230 MB pg_depend_reference_index | 207 MB pg_depend_depender_index | 198 MB pg_class_relname_nsp_index | 133 MB pg_index | 111 MB pg_statistic_relid_att_inh_index | 101 MB pg_class_oid_index | 52 MB pg_class_tblspc_relfilenode_index | 46 MB pg_shdepend | 38 MB pg_shdepend_depender_index | 25 MB pg_index_indexrelid_index | 24 MB pg_shdepend_reference_index | 21 MB pg_index_indrelid_index | 18 MB (20 rows)
Thanks
|