Re: problem with query

From: Sašo Gantar <sasog23(at)gmail(dot)com>
To: David Rowley <dgrowleyml(at)gmail(dot)com>
Cc: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: problem with query
Date: 2024-05-20 11:08:43
Message-ID: CAGB0_67gRyJkCycv6vJA_8fFtNUu7H-f-nsKastZTe93gobBHA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

>
>
> Aggregate (cost=512.53..512.54 rows=1 width=32) (actual
> time=8430.692..8430.724 rows=1 loops=1)
> Buffers: shared hit=2031540, temp read=954 written=956
> -> Subquery Scan on info (cost=510.85..512.52 rows=2 width=152)
> (actual time=8257.310..8430.532 rows=57 loops=1)
> Buffers: shared hit=2031540, temp read=954 written=956
> -> GroupAggregate (cost=510.85..512.50 rows=2 width=324) (actual
> time=8257.304..8430.427 rows=57 loops=1)
> Group Key: pgc.oid, pgn.nspname, pgc.relname, (CASE WHEN
> (pgc.relkind = 'r'::"char") THEN 'TABLE'::text WHEN (pgc.relkind =
> 'f'::"char") THEN 'FOREIGN TABLE'::text WHEN (pgc.relkind = 'v'::"char")
> THEN 'VIEW'::text WHEN (pgc.relkind = 'm'::"char") THEN 'MATERIALIZED
> VIEW'::text WHEN (pgc.relkind = 'p'::"char") THEN 'PARTITIONED TABLE'::text
> ELSE NULL::text END), (ROW(nc_1.nspname, c_1.relname, CASE WHEN
> pg_has_role(c_1.relowner, 'USAGE'::text) THEN pg_get_viewdef(c_1.oid) ELSE
> NULL::text END, CASE WHEN ((pg_relation_is_updatable((c_1.oid)::regclass,
> false) & 20) = 20) THEN 'YES'::text ELSE 'NO'::text END, CASE WHEN
> ((pg_relation_is_updatable((c_1.oid)::regclass, false) & 8) = 8) THEN
> 'YES'::text ELSE 'NO'::text END, CASE WHEN (alternatives: SubPlan 1 or
> hashed SubPlan 2) THEN 'YES'::text ELSE 'NO'::text END, CASE WHEN
> (alternatives: SubPlan 3 or hashed SubPlan 4) THEN 'YES'::text ELSE
> 'NO'::text END, CASE WHEN (alternatives: SubPlan 5 or hashed SubPlan 6)
> THEN 'YES'::text ELSE 'NO'::text END))
> Buffers: shared hit=2031540, temp read=954 written=956
> -> Sort (cost=510.85..510.85 rows=2 width=582) (actual
> time=8253.824..8258.370 rows=12994 loops=1)
> Sort Key: pgc.oid, pgc.relname, (CASE WHEN
> (pgc.relkind = 'r'::"char") THEN 'TABLE'::text WHEN (pgc.relkind =
> 'f'::"char") THEN 'FOREIGN TABLE'::text WHEN (pgc.relkind = 'v'::"char")
> THEN 'VIEW'::text WHEN (pgc.relkind = 'm'::"char") THEN 'MATERIALIZED
> VIEW'::text WHEN (pgc.relkind = 'p'::"char") THEN 'PARTITIONED TABLE'::text
> ELSE NULL::text END), (ROW(nc_1.nspname, c_1.relname, CASE WHEN
> pg_has_role(c_1.relowner, 'USAGE'::text) THEN pg_get_viewdef(c_1.oid) ELSE
> NULL::text END, CASE WHEN ((pg_relation_is_updatable((c_1.oid)::regclass,
> false) & 20) = 20) THEN 'YES'::text ELSE 'NO'::text END, CASE WHEN
> ((pg_relation_is_updatable((c_1.oid)::regclass, false) & 8) = 8) THEN
> 'YES'::text ELSE 'NO'::text END, CASE WHEN (alternatives: SubPlan 1 or
> hashed SubPlan 2) THEN 'YES'::text ELSE 'NO'::text END, CASE WHEN
> (alternatives: SubPlan 3 or hashed SubPlan 4) THEN 'YES'::text ELSE
> 'NO'::text END, CASE WHEN (alternatives: SubPlan 5 or hashed SubPlan 6)
> THEN 'YES'::text ELSE 'NO'::text END))
> Sort Method: external merge Disk: 7632kB
> Buffers: shared hit=2004085, temp read=954 written=956
> -> Nested Loop Left Join (cost=353.35..510.84 rows=2
> width=582) (actual time=25.558..8232.211 rows=12994 loops=1)
> Join Filter: (nc_1.nspname = pgn.nspname)
> Buffers: shared hit=2004074
> -> Nested Loop Left Join (cost=352.79..455.74
> rows=2 width=519) (actual time=25.548..8207.051 rows=12994 loops=1)
> Join Filter: (nc.nspname = pgn.nspname)
> Buffers: shared hit=1963631
> -> Nested Loop Left Join
> (cost=350.04..447.39 rows=2 width=487) (actual time=25.527..8049.285
> rows=12994 loops=1)
> Buffers: shared hit=1719586
> -> Nested Loop Left Join
> (cost=349.76..446.26 rows=1 width=417) (actual time=25.509..8039.922
> rows=429 loops=1)
> Join Filter:
> (((ist.event_object_schema)::name = pgn.nspname) AND
> ((ist.event_object_table)::name = pgc.relname) AND
> ((ist.trigger_name)::name = pgt.tgname))
> Rows Removed by Join Filter:
> 43600
> Buffers: shared hit=1711154
> -> Nested Loop Left Join
> (cost=39.75..81.15 rows=1 width=201) (actual time=0.209..1.186 rows=401
> loops=1)
> Buffers: shared hit=329
> -> Nested Loop
> (cost=39.47..80.56 rows=1 width=133) (actual time=0.179..0.475 rows=57
> loops=1)
> Buffers: shared
> hit=65
> -> Index Scan
> using pg_namespace_nspname_index on pg_namespace pgn (cost=0.28..2.49
> rows=1 width=68) (actual time=0.006..0.007 rows=1 loops=1)
> Index Cond:
> (nspname = 'servicedesk'::name)
> Buffers:
> shared hit=3
> -> Bitmap Heap
> Scan on pg_class pgc (cost=39.19..77.93 rows=14 width=73) (actual
> time=0.171..0.432 rows=57 loops=1)
> Recheck
> Cond: (relnamespace = pgn.oid)
> Filter:
> (relkind = ANY ('{r,v,f,m,p}'::"char"[]))
> Rows Removed
> by Filter: 163
> Heap Blocks:
> exact=44
> Buffers:
> shared hit=62
> -> Bitmap
> Index Scan on pg_class_relname_nsp_index (cost=0.00..39.19 rows=53
> width=0) (actual time=0.158..0.158 rows=220 loops=1)
> Index
> Cond: (relnamespace = pgn.oid)
>
> Buffers: shared hit=18
> -> Index Scan using
> pg_trigger_tgrelid_tgname_index on pg_trigger pgt (cost=0.28..0.52 rows=7
> width=72) (actual time=0.005..0.009 rows=7 loops=57)
> Index Cond:
> (tgrelid = pgc.oid)
> Buffers: shared
> hit=264
> -> Subquery Scan on ist
> (cost=310.01..365.05 rows=3 width=408) (actual time=11.344..20.034
> rows=109 loops=401)
> Filter:
> ((ist.event_object_schema)::name = 'servicedesk'::name)
> Rows Removed by Filter:
> 364
> Buffers: shared
> hit=1710825
> -> WindowAgg
> (cost=310.01..358.34 rows=537 width=888) (actual time=0.057..19.955
> rows=473 loops=401)
> Buffers: shared
> hit=1710825
> -> Sort
> (cost=310.01..311.35 rows=537 width=438) (actual time=0.008..0.042
> rows=473 loops=401)
> Sort Key:
> ((n.nspname)::information_schema.sql_identifier),
> ((c_2.relname)::information_schema.sql_identifier), "*VALUES*".column1,
> (((t_1.tgtype)::integer & 1)), (((t_1.tgtype)::integer & 66)), t_1.tgname
> Sort Method:
> quicksort Memory: 268kB
> Buffers:
> shared hit=2056
> -> Nested
> Loop (cost=195.66..285.66 rows=537 width=438) (actual time=2.143..2.752
> rows=473 loops=1)
> Join
> Filter: (((t_1.tgtype)::integer & "*VALUES*".column1) <> 0)
> Rows
> Removed by Join Filter: 679
>
> Buffers: shared hit=2053
> ->
> Hash Join (cost=195.66..269.45 rows=180 width=330) (actual
> time=2.136..2.532 rows=384 loops=1)
>
> Hash Cond: (t_1.tgrelid = c_2.oid)
>
> Buffers: shared hit=2053
>
> -> Seq Scan on pg_trigger t_1 (cost=0.00..70.55 rows=383 width=202)
> (actual time=0.005..0.313 rows=384 loops=1)
>
> Filter: (NOT tgisinternal)
>
> Rows Removed by Filter: 1872
>
> Buffers: shared hit=48
>
> -> Hash (cost=181.57..181.57 rows=1127 width=136) (actual
> time=2.120..2.123 rows=2401 loops=1)
>
> Buckets: 4096 (originally 2048) Batches: 1 (originally 1) Memory
> Usage: 426kB
>
> Buffers: shared hit=2005
>
> -> Hash Join (cost=23.06..181.57 rows=1127 width=136) (actual
> time=0.892..1.695 rows=2401 loops=1)
>
> Hash Cond: (c_2.relnamespace = n.oid)
>
> Buffers: shared hit=2005
>
> -> Seq Scan on pg_class c_2 (cost=0.00..154.04 rows=1690
> width=76) (actual time=0.003..0.449 rows=2401 loops=1)
>
> Filter: (pg_has_role(relowner, 'USAGE'::text) OR
> has_table_privilege(oid, 'INSERT, UPDATE, DELETE, TRUNCATE, REFERENCES,
> TRIGGER'::text) OR has_any_column_privilege(oid, 'INSERT, UPDATE,
> REFERENCES'::text))
>
> Buffers: shared hit=58
>
> -> Hash (cost=17.44..17.44 rows=450 width=68) (actual
> time=0.868..0.869 rows=47 loops=1)
>
> Buckets: 1024 Batches: 1 Memory Usage: 13kB
>
> Buffers: shared hit=1947
>
> -> Seq Scan on pg_namespace n (cost=0.00..17.44
> rows=450 width=68) (actual time=0.003..0.859 rows=47 loops=1)
>
> Filter: (NOT pg_is_other_temp_schema(oid))
>
> Rows Removed by Filter: 642
>
> Buffers: shared hit=1947
> ->
> Materialize (cost=0.00..0.05 rows=3 width=36) (actual time=0.000..0.000
> rows=3 loops=384)
>
> -> Values Scan on "*VALUES*" (cost=0.00..0.04 rows=3 width=36) (actual
> time=0.003..0.004 rows=3 loops=1)
> -> Index Scan using
> pg_attribute_relid_attnum_index on pg_attribute pga (cost=0.28..1.06
> rows=7 width=70) (actual time=0.005..0.016 rows=30 loops=429)
> Index Cond: (attrelid =
> pgc.oid)
> Buffers: shared hit=8432
> -> Nested Loop Left Join
> (cost=2.76..4.16 rows=1 width=224) (actual time=0.011..0.012 rows=1
> loops=12994)
> Buffers: shared hit=244045
> -> Nested Loop (cost=2.21..3.52
> rows=1 width=228) (actual time=0.010..0.011 rows=1 loops=12994)
> Buffers: shared hit=219133
> -> Nested Loop
> (cost=1.93..3.17 rows=1 width=627) (actual time=0.006..0.007 rows=1
> loops=12994)
> Buffers: shared
> hit=187599
> -> Index Scan using
> pg_class_relname_nsp_index on pg_class c (cost=0.28..0.44 rows=1 width=76)
> (actual time=0.001..0.001 rows=1 loops=12994)
> Index Cond:
> (relname = pgc.relname)
> Filter: (relkind =
> ANY ('{r,v,m,f,p}'::"char"[]))
> Buffers: shared
> hit=39712
> -> Nested Loop
> (cost=1.65..2.72 rows=1 width=571) (actual time=0.005..0.005 rows=1
> loops=13724)
> Buffers: shared
> hit=147887
> -> Nested Loop
> Left Join (cost=1.38..2.39 rows=1 width=503) (actual time=0.004..0.004
> rows=1 loops=13724)
> Buffers:
> shared hit=116864
> -> Nested
> Loop Left Join (cost=1.10..2.07 rows=1 width=294) (actual
> time=0.003..0.003 rows=1 loops=13724)
> Join
> Filter: (t.typtype = 'd'::"char")
>
> Buffers: shared hit=92576
> ->
> Nested Loop (cost=0.55..1.32 rows=1 width=160) (actual time=0.002..0.002
> rows=1 loops=13724)
>
> Buffers: shared hit=71866
>
> -> Index Scan using pg_attribute_relid_attnam_index on pg_attribute a
> (cost=0.28..1.00 rows=1 width=80) (actual time=0.001..0.001 rows=1
> loops=13724)
>
> Index Cond: ((attrelid = c.oid) AND (attname = pga.attname))
>
> Filter: ((NOT attisdropped) AND (attnum > 0) AND
> (pg_has_role(c.relowner, 'USAGE'::text) OR has_column_privilege(c.oid,
> attnum, 'SELECT, INSERT, UPDATE, REFERENCES'::text)))
>
> Rows Removed by Filter: 0
>
> Buffers: shared hit=40843
>
> -> Index Scan using pg_type_oid_index on pg_type t (cost=0.27..0.32
> rows=1 width=84) (actual time=0.001..0.001 rows=1 loops=10341)
>
> Index Cond: (oid = a.atttypid)
>
> Buffers: shared hit=31023
> ->
> Nested Loop (cost=0.55..0.74 rows=1 width=138) (actual time=0.001..0.001
> rows=0 loops=10341)
>
> Buffers: shared hit=20710
>
> -> Index Scan using pg_type_oid_index on pg_type bt (cost=0.27..0.42
> rows=1 width=78) (actual time=0.001..0.001 rows=0 loops=10341)
>
> Index Cond: (oid = t.typbasetype)
>
> Buffers: shared hit=20689
>
> -> Index Scan using pg_namespace_oid_index on pg_namespace nbt
> (cost=0.28..0.32 rows=1 width=68) (actual time=0.001..0.001 rows=1 loops=7)
>
> Index Cond: (oid = bt.typnamespace)
>
> Buffers: shared hit=21
> -> Index
> Scan using pg_attrdef_adrelid_adnum_index on pg_attrdef ad
> (cost=0.28..0.32 rows=1 width=211) (actual time=0.001..0.001 rows=0
> loops=10341)
> Index
> Cond: ((adrelid = a.attrelid) AND (adnum = a.attnum))
>
> Buffers: shared hit=24288
> -> Index Scan
> using pg_namespace_oid_index on pg_namespace nc (cost=0.28..0.32 rows=1
> width=68) (actual time=0.001..0.001 rows=1 loops=10341)
> Index Cond:
> (oid = c.relnamespace)
> Filter:
> ((NOT pg_is_other_temp_schema(oid)) AND (nspname = 'servicedesk'::name))
> Rows Removed
> by Filter: 0
> Buffers:
> shared hit=31023
> -> Index Scan using
> pg_namespace_oid_index on pg_namespace nt (cost=0.28..0.32 rows=1
> width=68) (actual time=0.001..0.001 rows=1 loops=10150)
> Index Cond: (oid =
> t.typnamespace)
> Buffers: shared hit=30450
> -> Nested Loop (cost=0.55..0.63
> rows=1 width=4) (actual time=0.001..0.001 rows=0 loops=10150)
> Buffers: shared hit=24912
> -> Index Scan using
> pg_collation_oid_index on pg_collation co (cost=0.28..0.31 rows=1
> width=72) (actual time=0.001..0.001 rows=0 loops=10150)
> Index Cond: (oid =
> a.attcollation)
> Buffers: shared hit=21453
> -> Index Scan using
> pg_namespace_oid_index on pg_namespace nco (cost=0.28..0.32 rows=1
> width=68) (actual time=0.001..0.001 rows=0 loops=1153)
> Index Cond: (oid =
> co.collnamespace)
> Filter: ((nspname <>
> 'pg_catalog'::name) OR (co.collname <> 'default'::name))
> Rows Removed by Filter: 1
> Buffers: shared hit=3459
> -> Nested Loop (cost=0.56..27.52 rows=1
> width=160) (actual time=0.001..0.001 rows=0 loops=12994)
> Buffers: shared hit=40443
> -> Index Scan using
> pg_class_relname_nsp_index on pg_class c_1 (cost=0.28..0.46 rows=1
> width=76) (actual time=0.001..0.001 rows=0 loops=12994)
> Index Cond: (relname = pgc.relname)
> Filter: ((relkind = ANY
> ('{v,m}'::"char"[])) AND (pg_has_role(relowner, 'USAGE'::text) OR
> has_table_privilege(oid, 'SELECT, INSERT, UPDATE, DELETE, TRUNCATE,
> REFERENCES, TRIGGER'::text) OR has_any_column_privilege(oid, 'SELECT,
> INSERT, UPDATE, REFERENCES'::text)))
> Rows Removed by Filter: 1
> Buffers: shared hit=39712
> -> Index Scan using
> pg_namespace_oid_index on pg_namespace nc_1 (cost=0.28..0.43 rows=1
> width=68) (actual time=0.001..0.001 rows=1 loops=9)
> Index Cond: (oid = c_1.relnamespace)
> Filter: ((NOT
> pg_is_other_temp_schema(oid)) AND (nspname = 'servicedesk'::name))
> Buffers: shared hit=27
> SubPlan 1
> -> Index Scan using
> pg_trigger_tgrelid_tgname_index on pg_trigger (cost=0.28..8.80 rows=1
> width=0) (actual time=0.001..0.001 rows=0 loops=9)
> Index Cond: (tgrelid = c_1.oid)
> Filter: (((tgtype)::integer & 81)
> = 81)
> Buffers: shared hit=18
> SubPlan 2
> -> Seq Scan on pg_trigger pg_trigger_1
> (cost=0.00..87.46 rows=11 width=4) (never executed)
> Filter: (((tgtype)::integer & 81)
> = 81)
> SubPlan 3
> -> Index Scan using
> pg_trigger_tgrelid_tgname_index on pg_trigger pg_trigger_2
> (cost=0.28..8.80 rows=1 width=0) (actual time=0.001..0.001 rows=0 loops=9)
> Index Cond: (tgrelid = c_1.oid)
> Filter: (((tgtype)::integer & 73)
> = 73)
> Buffers: shared hit=18
> SubPlan 4
> -> Seq Scan on pg_trigger pg_trigger_3
> (cost=0.00..87.46 rows=11 width=4) (never executed)
> Filter: (((tgtype)::integer & 73)
> = 73)
> SubPlan 5
> -> Index Scan using
> pg_trigger_tgrelid_tgname_index on pg_trigger pg_trigger_4
> (cost=0.28..8.80 rows=1 width=0) (actual time=0.001..0.001 rows=0 loops=9)
> Index Cond: (tgrelid = c_1.oid)
> Filter: (((tgtype)::integer & 69)
> = 69)
> Buffers: shared hit=18
> SubPlan 6
> -> Seq Scan on pg_trigger pg_trigger_5
> (cost=0.00..87.46 rows=11 width=4) (never executed)
> Filter: (((tgtype)::integer & 69)
> = 69)
> Planning:
> Buffers: shared hit=498
> Planning Time: 7.419 ms
> Execution Time: 8432.371 ms
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Sašo Gantar 2024-05-20 11:09:00 Re: problem with query
Previous Message David Rowley 2024-05-20 11:01:05 Re: signal 11: Segmentation fault ; query constraint list; pg16.3