explain.depesz.com

PostgreSQL's explain analyze made readable

Result: HGOh

Settings
# exclusive inclusive rows x rows loops node
1. 0.049 8.041 ↑ 1.0 15 1

Sort (cost=319,332.71..319,332.75 rows=15 width=168) (actual time=8.033..8.041 rows=15 loops=1)

  • Sort Key: m.enabled DESC, m.name
  • Sort Method: quicksort Memory: 27kB
2. 0.162 7.992 ↑ 1.0 15 1

Hash Right Join (cost=21,289.28..319,332.42 rows=15 width=168) (actual time=0.897..7.992 rows=15 loops=1)

  • Hash Cond: ((dbobjects_meta.name)::text = (m.name)::text)
3. 0.036 7.738 ↑ 1.0 15 1

Nested Loop (cost=21,281.94..319,309.46 rows=15 width=87) (actual time=0.828..7.738 rows=15 loops=1)

4. 0.029 0.292 ↑ 1.0 15 1

Nested Loop (cost=0.68..90.14 rows=15 width=47) (actual time=0.038..0.292 rows=15 loops=1)

5. 0.023 0.023 ↑ 1.0 15 1

Index Only Scan using dbobjects_meta_pkey on dbobjects_meta (cost=0.14..19.53 rows=15 width=19) (actual time=0.005..0.023 rows=15 loops=1)

  • Heap Fetches: 11
6. 0.030 0.240 ↑ 1.0 1 15

Subquery Scan on lr (cost=0.55..4.70 rows=1 width=28) (actual time=0.015..0.016 rows=1 loops=15)

7. 0.030 0.210 ↑ 1.0 1 15

Limit (cost=0.55..4.68 rows=1 width=246) (actual time=0.013..0.014 rows=1 loops=15)

8. 0.180 0.180 ↑ 15,780.0 1 15

Index Scan using tmpidx on execution_tracker (cost=0.55..65,210.31 rows=15,780 width=246) (actual time=0.012..0.012 rows=1 loops=15)

  • Index Cond: ((controller)::text = (dbobjects_meta.name)::text)
9. 1.620 7.410 ↑ 1.0 1 15

Aggregate (cost=21,281.26..21,281.27 rows=1 width=56) (actual time=0.494..0.494 rows=1 loops=15)

10.          

Initplan (for Aggregate)

11. 0.285 1.965 ↑ 1.0 1 15

Limit (cost=192.94..194.87 rows=1 width=16) (actual time=0.130..0.131 rows=1 loops=15)

12. 1.680 1.680 ↑ 171.5 92 15

Index Only Scan using tmpidx on execution_tracker execution_tracker_2 (cost=0.55..30,360.84 rows=15,780 width=16) (actual time=0.007..0.112 rows=92 loops=15)

  • Index Cond: (controller = ($2)::text)
  • Heap Fetches: 951
13. 3.450 3.825 ↑ 60.5 87 15

Bitmap Heap Scan on execution_tracker execution_tracker_1 (cost=5,546.46..20,967.79 rows=5,260 width=16) (actual time=0.167..0.255 rows=87 loops=15)

  • Recheck Cond: (((controller)::text = (dbobjects_meta.name)::text) AND (execution_id >= $3))
  • Filter: (ended IS NOT NULL)
  • Rows Removed by Filter: 0
  • Heap Blocks: exact=1387
14. 0.375 0.375 ↑ 56.6 93 15

Bitmap Index Scan on tmpidx (cost=0.00..5,545.15 rows=5,260 width=0) (actual time=0.025..0.025 rows=93 loops=15)

  • Index Cond: (((controller)::text = (dbobjects_meta.name)::text) AND (execution_id >= $3))
15. 0.011 0.032 ↑ 1.0 15 1

Hash (cost=7.15..7.15 rows=15 width=20) (actual time=0.031..0.032 rows=15 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
16. 0.021 0.021 ↑ 1.0 15 1

Seq Scan on dbobjects_meta m (cost=0.00..7.15 rows=15 width=20) (actual time=0.004..0.021 rows=15 loops=1)

17.          

SubPlan (for Hash Right Join)

18. 0.060 0.060 ↓ 0.0 0 15

Seq Scan on etl_locks (cost=0.00..1.00 rows=1 width=8) (actual time=0.004..0.004 rows=0 loops=15)

  • Filter: (((subject)::text = (m.name)::text) AND (("group")::text = 'CONTROLLER'::text))
  • Rows Removed by Filter: 4
Planning time : 0.676 ms