explain.depesz.com

PostgreSQL's explain analyze made readable

Result: hRfO

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 0.000 ↓ 0.0

Merge Join (cost=541,167.96..554,239.21 rows=739,973 width=1,262) (actual rows= loops=)

  • Merge Cond: (m.event_uuid = ns.event_uuid)
2. 0.000 0.000 ↓ 0.0

Merge Join (cost=3,233.35..3,338.02 rows=6,764 width=1,262) (actual rows= loops=)

  • Merge Cond: (m.event_uuid = e.event_uuid)
3. 0.000 0.000 ↓ 0.0

Sort (cost=1,361.39..1,362.99 rows=643 width=16) (actual rows= loops=)

  • Sort Key: m.event_uuid
4. 0.000 0.000 ↓ 0.0

Index Scan using messages_org_part_25_event_created_idx on messages_org_part_25 m (cost=0.42..1,331.39 rows=643 width=16) (actual rows= loops=)

  • Index Cond: ((event_created >= '2019-10-01 00:00:00-07'::timestamp with time zone) AND (event_created <= '2019-10-02 00:00:00-07'::timestamp with time zone))
  • Filter: (((subject)::text ~~ '%ACT%'::text) AND (organization_uuid = 'd528beb8-98bf-4d4a-b93a-5333bc759185'::uuid))
5. 0.000 0.000 ↓ 0.0

Sort (cost=1,871.96..1,877.22 rows=2,104 width=1,246) (actual rows= loops=)

  • Sort Key: e.event_uuid
6. 0.000 0.000 ↓ 0.0

Index Scan using events_org_part_25_created_idx on events_org_part_25 e (cost=0.42..1,755.83 rows=2,104 width=1,246) (actual rows= loops=)

  • Index Cond: ((created >= '2019-10-01 00:00:00-07'::timestamp with time zone) AND (created <= '2019-10-02 00:00:00-07'::timestamp with time zone))
  • Filter: ((organization_uuid = 'd528beb8-98bf-4d4a-b93a-5333bc759185'::uuid) AND ((status)::text = 'ACTIVE'::text))
7. 0.000 0.000 ↓ 0.0

Sort (cost=537,934.61..537,989.31 rows=21,880 width=16) (actual rows= loops=)

  • Sort Key: ns.event_uuid
8. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.11..536,357.36 rows=21,880 width=16) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Index Scan using groups_org_part_default_pkey on groups_org_part_default gr (cost=0.55..226.17 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (organization_uuid = 'd528beb8-98bf-4d4a-b93a-5333bc759185'::uuid)
  • Filter: ((target_name)::text ~~ '%OnCall%'::text)
10. 0.000 0.000 ↓ 0.0

Index Scan using notifications_summary_weekly_organization_uuid_recipient__idx35 on notifications_summary_weekly_partitioned_2019_w40 ns (cost=0.56..536,130.45 rows=74 width=32) (actual rows= loops=)

  • Index Cond: ((recipient_uuid = gr.group_uuid) AND (created_date >= '2019-10-01 00:00:00-07'::timestamp with time zone) AND (created_date <= '2019-10-02 00:00:00-07'::timestamp with time zone))