explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 1PV9

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 1,164.249 ↑ 1.0 1 1

Finalize Aggregate (cost=435,290.38..435,290.39 rows=1 width=8) (actual time=1,164.249..1,164.249 rows=1 loops=1)

2. 59.619 1,179.895 ↓ 1.5 3 1

Gather (cost=435,290.16..435,290.37 rows=2 width=8) (actual time=1,163.793..1,179.895 rows=3 loops=1)

  • Workers Planned: 2
  • Workers Launched: 2
3. 17.081 1,120.276 ↑ 1.0 1 3 / 3

Partial Aggregate (cost=434,290.16..434,290.17 rows=1 width=8) (actual time=1,120.276..1,120.276 rows=1 loops=3)

4. 57.107 1,103.195 ↓ 1.5 262,211 3 / 3

Nested Loop (cost=2,745.26..433,841.17 rows=179,597 width=0) (actual time=6.611..1,103.195 rows=262,211 loops=3)

5. 17.334 84.864 ↓ 1.5 40,051 3 / 3

Hash Join (cost=2,744.70..155,050.98 rows=26,504 width=16) (actual time=6.409..84.864 rows=40,051 loops=3)

  • Hash Cond: (t."TicketTypeID" = tt."ID")
6. 61.957 67.384 ↑ 1.3 40,424 3 / 3

Parallel Bitmap Heap Scan on "Tickets" t (cost=2,743.63..154,763.34 rows=53,008 width=32) (actual time=6.045..67.384 rows=40,424 loops=3)

  • Recheck Cond: (("ResponseDueDate" >= '2020-01-01 00:00:00-05'::timestamp with time zone) AND ("ResponseDueDate" < '2020-02-01 00:00:00-05'::timestamp with time zone))
  • Filter: ((NOT "IsCanceled") AND (("ChildTicketNumber" IS NULL) OR (("TicketNumber")::text <> ("ChildTicketNumber")::text)) AND ("Status" = 2))
  • Rows Removed by Filter: 4488
  • Heap Blocks: exact=3146
7. 5.427 5.427 ↓ 1.0 134,734 1 / 3

Bitmap Index Scan on "IX_Tickets_ResponseDueDate" (cost=0.00..2,711.83 rows=129,140 width=0) (actual time=16.281..16.281 rows=134,734 loops=1)

  • Index Cond: (("ResponseDueDate" >= '2020-01-01 00:00:00-05'::timestamp with time zone) AND ("ResponseDueDate" < '2020-02-01 00:00:00-05'::timestamp with time zone))
8. 0.022 0.146 ↓ 1.5 3 3 / 3

Hash (cost=1.04..1.04 rows=2 width=16) (actual time=0.146..0.146 rows=3 loops=3)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
9. 0.124 0.124 ↓ 1.5 3 3 / 3

Seq Scan on "TicketTypes" tt (cost=0.00..1.04 rows=2 width=16) (actual time=0.123..0.124 rows=3 loops=3)

  • Filter: "PositiveResponseRequired
  • Rows Removed by Filter: 1
10. 961.224 961.224 ↑ 7.1 7 120,153 / 3

Index Only Scan using "IX_TicketServiceAreas_TicketID" on "TicketServiceAreas" tsa (cost=0.56..10.02 rows=50 width=16) (actual time=0.022..0.024 rows=7 loops=120,153)

  • Index Cond: ("TicketID" = t."ID")
  • Heap Fetches: 786633
Planning time : 0.721 ms
Execution time : 1,179.984 ms