explain.depesz.com

PostgreSQL's explain analyze made readable

Result: GYjV

Settings
# exclusive inclusive rows x rows loops node
1. 0.004 129.711 ↑ 1.0 3 1

Limit (cost=1.61..7.99 rows=3 width=203) (actual time=129.699..129.711 rows=3 loops=1)

2. 0.004 129.707 ↑ 410,418.3 3 1

Nested Loop Left Join (cost=1.61..2,617,236.66 rows=1,231,255 width=203) (actual time=129.698..129.707 rows=3 loops=1)

3. 0.003 129.694 ↑ 410,418.3 3 1

Nested Loop Left Join (cost=1.46..2,417,259.82 rows=1,231,255 width=195) (actual time=129.688..129.694 rows=3 loops=1)

  • Filter: (("TagHeader".rowid IS NULL) OR "TagHeader".active)
4. 0.003 129.685 ↑ 585,475.7 3 1

Merge Append (cost=1.04..1,599,881.68 rows=1,756,427 width=159) (actual time=129.679..129.685 rows=3 loops=1)

  • Sort Key: "LogEvent_1"."time" DESC
5. 129.432 129.432 ↓ 0.0 0 1

Index Scan Backward using "LogEvent_1_time_idx" on "LogEvent_1" (cost=0.29..8,658.51 rows=310 width=179) (actual time=129.432..129.432 rows=0 loops=1)

  • Index Cond: ("time" >= '1561939200000'::bigint)
  • Filter: ((upper(description) !~~ '%GOOSE%'::text) AND (("tagHeader" = ANY ('{83290,1507,149028,334785,115878,214452,165380,230801,269224,285588,198210,247286,132650,285582,165491,285570,50436,50557,1475,181832,1472,334637,83128,165475,230909,198059,383830,230899,66903,132624,269193,149107,1331,165456,99466,269189,214404,181681,66747,394452,165454,149094,198025,165445,1304,367427,181659,50499,83082,132713,83080,301864,99572,83081,50500,132716,247086,99560,367294,165291,50365,269277,198129,132699,149063,148923,115908,34114,230709,181754,148913,66701,230690,181757,165258,181731,334663,33965,17734,394246,1372,33959,165375,181720,165363,334514,269094,50308,230656,181718,269086,197937,334510,214301,285567,247141,33931}'::bigint[])) OR ("tagHeader" IS NULL)))
  • Rows Removed by Filter: 46222
6. 0.210 0.210 ↑ 1,455.0 1 1

Index Scan Backward using "LogEvent_2_time_idx" on "LogEvent_2" (cost=0.29..8,524.87 rows=1,455 width=177) (actual time=0.210..0.210 rows=1 loops=1)

  • Index Cond: ("time" >= '1561939200000'::bigint)
  • Filter: ((upper(description) !~~ '%GOOSE%'::text) AND (("tagHeader" = ANY ('{83290,1507,149028,334785,115878,214452,165380,230801,269224,285588,198210,247286,132650,285582,165491,285570,50436,50557,1475,181832,1472,334637,83128,165475,230909,198059,383830,230899,66903,132624,269193,149107,1331,165456,99466,269189,214404,181681,66747,394452,165454,149094,198025,165445,1304,367427,181659,50499,83082,132713,83080,301864,99572,83081,50500,132716,247086,99560,367294,165291,50365,269277,198129,132699,149063,148923,115908,34114,230709,181754,148913,66701,230690,181757,165258,181731,334663,33965,17734,394246,1372,33959,165375,181720,165363,334514,269094,50308,230656,181718,269086,197937,334510,214301,285567,247141,33931}'::bigint[])) OR ("tagHeader" IS NULL)))
  • Rows Removed by Filter: 77
7. 0.040 0.040 ↑ 584,887.3 3 1

Index Scan Backward using "LogEvent_3_time_idx" on "LogEvent_3" (cost=0.44..1,559,996.79 rows=1,754,662 width=159) (actual time=0.035..0.040 rows=3 loops=1)

  • Index Cond: ("time" >= '1561939200000'::bigint)
  • Filter: ((upper(description) !~~ '%GOOSE%'::text) AND (("tagHeader" = ANY ('{83290,1507,149028,334785,115878,214452,165380,230801,269224,285588,198210,247286,132650,285582,165491,285570,50436,50557,1475,181832,1472,334637,83128,165475,230909,198059,383830,230899,66903,132624,269193,149107,1331,165456,99466,269189,214404,181681,66747,394452,165454,149094,198025,165445,1304,367427,181659,50499,83082,132713,83080,301864,99572,83081,50500,132716,247086,99560,367294,165291,50365,269277,198129,132699,149063,148923,115908,34114,230709,181754,148913,66701,230690,181757,165258,181731,334663,33965,17734,394246,1372,33959,165375,181720,165363,334514,269094,50308,230656,181718,269086,197937,334510,214301,285567,247141,33931}'::bigint[])) OR ("tagHeader" IS NULL)))
8. 0.006 0.006 ↓ 0.0 0 3

Index Scan using "TagHeader_pkey" on "TagHeader" (cost=0.42..0.46 rows=1 width=9) (actual time=0.002..0.002 rows=0 loops=3)

  • Index Cond: ("LogEvent_1"."tagHeader" = rowid)
9. 0.009 0.009 ↑ 1.0 1 3

Index Scan using "LogEventClass_pkey" on "LogEventClass" (cost=0.14..0.16 rows=1 width=16) (actual time=0.003..0.003 rows=1 loops=3)

  • Index Cond: ("LogEvent_1"."eventClass" = rowid)
Planning time : 8.334 ms