From: | Lars Aksel Opsahl <Lars(dot)Opsahl(at)nibio(dot)no> |
---|---|
To: | Vijaykumar Jain <vijaykumarjain(dot)github(at)gmail(dot)com> |
Cc: | Pgsql Performance <pgsql-performance(at)lists(dot)postgresql(dot)org> |
Subject: | Re: slow "select count(*) from information_schema.tables;" in some cases |
Date: | 2022-02-07 18:55:57 |
Message-ID: | AM7P189MB10285F4025EA9299DD9C3DEA9D2C9@AM7P189MB1028.EURP189.PROD.OUTLOOK.COM |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
>Vijaykumar Jain <vijaykumarjain(dot)github(at)gmail(dot)com>
>Mon 2/7/2022 6:49 PM
>
>On Mon, Feb 7, 2022, 10:26 PM Lars Aksel Opsahl <Lars(dot)Opsahl(at)nibio(dot)no> wrote:
>Hi
>
Hi
>Can you share the output of the below query?
>
>From the past threads I have learnt that too many templates objects may add to bloat of system catalogs and may in start resulting in impacting performance.
>Make a note especially around
>
>pg_attribute
>pg_depends
>and check for bloat, if required, vacuum full? these objects to speed up.
>
>
>
>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
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;
relname | pg_size_pretty
--------------------------------+----------------
pg_attrdef_oid_index | 9744 kB
pg_attrdef_adrelid_adnum_index | 9712 kB
pg_type_typname_nsp_index | 87 MB
pg_sequence_seqrelid_index | 8224 kB
pg_foreign_table_relid_index | 8192 bytes
pg_enum_typid_sortorder_index | 8192 bytes
pg_largeobject_metadata | 8192 bytes
pg_event_trigger_oid_index | 8192 bytes
pg_extension | 8192 bytes
pg_event_trigger_evtname_index | 8192 bytes
pg_am | 8192 bytes
pg_foreign_data_wrapper | 8192 bytes
pg_foreign_server_name_index | 8192 bytes
pg_enum_typid_label_index | 8192 bytes
pg_default_acl | 8192 bytes
pg_foreign_server_oid_index | 8192 bytes
pg_db_role_setting | 8192 bytes
pg_database | 8192 bytes
pg_enum_oid_index | 8192 bytes
pg_language | 8192 bytes
(20 rows)
Time: 22.354 ms
VACUUM full pg_attribute;
40P01: deadlock detected
VACUUM full pg_depends;
40P01: deadlock detected
I have to test those later
This works ok
VACUUM pg_attribute;
VACUUM pg_depends;
VACUUM full pg_attrdef;
VACUUM full pg_type ;
VACUUM full pg_sequence;
VACUUM full pg_type;
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;
relname | pg_size_pretty
--------------------------------------+----------------
pg_type_oid_index | 960 kB
pg_language | 8192 bytes
pg_enum_typid_label_index | 8192 bytes
pg_pltemplate | 8192 bytes
pg_event_trigger_oid_index | 8192 bytes
pg_foreign_server_oid_index | 8192 bytes
pg_foreign_server_name_index | 8192 bytes
pg_enum_oid_index | 8192 bytes
pg_largeobject_metadata | 8192 bytes
pg_foreign_table_relid_index | 8192 bytes
pg_am | 8192 bytes
pg_database | 8192 bytes
pg_event_trigger_evtname_index | 8192 bytes
pg_extension | 8192 bytes
pg_partitioned_table_partrelid_index | 8192 bytes
pg_enum_typid_sortorder_index | 8192 bytes
pg_db_role_setting | 8192 bytes
pg_default_acl | 8192 bytes
pg_foreign_data_wrapper | 8192 bytes
pg_publication_oid_index | 8192 bytes
Still slow.
Lars
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2022-02-07 19:02:50 | Re: slow "select count(*) from information_schema.tables;" in some cases |
Previous Message | Vijaykumar Jain | 2022-02-07 17:48:44 | Re: slow "select count(*) from information_schema.tables;" in some cases |