explain.depesz.com

PostgreSQL's explain analyze made readable

Result: Av72

Settings
# exclusive inclusive rows x rows loops node
1. 10.862 396.137 ↑ 1.0 10 1

Limit (cost=25,364.92..25,364.94 rows=10 width=77) (actual time=385.277..396.137 rows=10 loops=1)

2. 0.010 385.275 ↑ 202.5 10 1

Sort (cost=25,364.92..25,369.98 rows=2,025 width=77) (actual time=385.275..385.275 rows=10 loops=1)

  • Sort Key: (max(request_logs.duration)) DESC
  • Sort Method: quicksort Memory: 26kB
3. 0.000 385.265 ↑ 155.8 13 1

Finalize GroupAggregate (cost=24,787.88..25,321.16 rows=2,025 width=77) (actual time=385.222..385.265 rows=13 loops=1)

  • Group Key: request_logs.name
4. 21.222 396.069 ↑ 103.8 39 1

Gather Merge (cost=24,787.88..25,260.41 rows=4,050 width=93) (actual time=385.204..396.069 rows=39 loops=1)

  • Workers Planned: 2
  • Workers Launched: 2
5. 0.079 374.847 ↑ 155.8 13 3 / 3

Sort (cost=23,787.85..23,792.92 rows=2,025 width=93) (actual time=374.845..374.847 rows=13 loops=3)

  • Sort Key: request_logs.name
  • Sort Method: quicksort Memory: 26kB
  • Worker 0: Sort Method: quicksort Memory: 26kB
  • Worker 1: Sort Method: quicksort Memory: 26kB
6. 59.185 374.768 ↑ 155.8 13 3 / 3

Partial HashAggregate (cost=23,656.39..23,676.64 rows=2,025 width=93) (actual time=374.748..374.768 rows=13 loops=3)

  • Group Key: request_logs.name
7. 33.618 315.583 ↓ 3.9 93,692 3 / 3

Nested Loop (cost=91.52..23,476.11 rows=24,038 width=61) (actual time=121.368..315.583 rows=93,692 loops=3)

8. 13.545 52.446 ↓ 2.7 17,655 3 / 3

Hash Join (cost=91.09..10,883.67 rows=6,465 width=4) (actual time=3.342..52.446 rows=17,655 loops=3)

  • Hash Cond: (tasks.test_id = tests.id)
9. 35.957 35.957 ↑ 1.2 24,432 3 / 3

Parallel Seq Scan on tasks (cost=0.00..10,613.40 rows=30,540 width=8) (actual time=0.264..35.957 rows=24,432 loops=3)

10. 0.047 2.944 ↑ 3.6 147 3 / 3

Hash (cost=84.42..84.42 rows=534 width=4) (actual time=2.944..2.944 rows=147 loops=3)

  • Buckets: 1024 Batches: 1 Memory Usage: 14kB
11. 0.036 2.897 ↑ 3.6 147 3 / 3

Nested Loop (cost=4.08..84.42 rows=534 width=4) (actual time=1.006..2.897 rows=147 loops=3)

12. 0.004 0.633 ↑ 1.0 1 3 / 3

Nested Loop (cost=0.00..2.96 rows=1 width=4) (actual time=0.615..0.633 rows=1 loops=3)

13. 0.438 0.438 ↑ 1.0 1 3 / 3

Seq Scan on organizations (cost=0.00..1.48 rows=1 width=4) (actual time=0.431..0.438 rows=1 loops=3)

  • Filter: (id = 1)
  • Rows Removed by Filter: 37
14. 0.191 0.191 ↑ 1.0 1 3 / 3

Seq Scan on organization_members (cost=0.00..1.48 rows=1 width=4) (actual time=0.180..0.191 rows=1 loops=3)

  • Filter: (organization_id = 1)
  • Rows Removed by Filter: 37
15. 1.146 2.228 ↑ 3.6 147 3 / 3

Hash Join (cost=4.08..76.12 rows=534 width=8) (actual time=0.389..2.228 rows=147 loops=3)

  • Hash Cond: (tests.test_suite_id = test_suites.id)
16. 0.771 0.771 ↑ 1.0 2,522 3 / 3

Seq Scan on tests (cost=0.00..65.22 rows=2,522 width=8) (actual time=0.031..0.771 rows=2,522 loops=3)

17. 0.016 0.311 ↑ 1.0 29 3 / 3

Hash (cost=3.71..3.71 rows=29 width=8) (actual time=0.310..0.311 rows=29 loops=3)

  • Buckets: 1024 Batches: 1 Memory Usage: 10kB
18. 0.295 0.295 ↑ 1.0 29 3 / 3

Seq Scan on test_suites (cost=0.00..3.71 rows=29 width=8) (actual time=0.247..0.295 rows=29 loops=3)

  • Filter: (organization_id = 1)
  • Rows Removed by Filter: 108
19. 229.519 229.519 ↑ 1.6 5 52,966 / 3

Index Scan using request_logs_task_id on request_logs (cost=0.42..1.87 rows=8 width=65) (actual time=0.010..0.013 rows=5 loops=52,966)

  • Index Cond: (task_id = tasks.id)
  • Filter: (((entry_type)::text <> 'navigation'::text) AND (created_at >= '2020-01-01 00:00:00+00'::timestamp with time zone) AND (created_at <= '2020-01-31 22:00:00+00'::timestamp with time zone))
  • Rows Removed by Filter: 7
Planning time : 2.818 ms
Execution time : 396.357 ms