explain.depesz.com

PostgreSQL's explain analyze made readable

Result: jEeU

Settings
# exclusive inclusive rows x rows loops node
1. 418.736 14,012.319 ↓ 1.0 901,696 1

Gather (cost=310,772.12..669,867.54 rows=899,866 width=4) (actual time=11,952.919..14,012.319 rows=901,696 loops=1)

  • Workers Planned: 2
  • Workers Launched: 2
  • Timing: Generation 5.080 ms, Inlining 134.821 ms, Optimization 214.892 ms, Emission 153.297 ms, Total 508.091 ms
  • Output: q.id
  • Options: Inlining true, Optimization true, Expressions true, Deforming true
  • JIT for worker 1:
  • JIT for worker 0:
  • Functions: 57
  • Buffers: shared hit=11,483 read=264,259, temp read=58,256 written=58,616
2. 2,968.631 13,593.583 ↑ 1.2 300,565 3 / 3

Parallel Hash Join (cost=309,772.12..578,880.94 rows=374,944 width=4) (actual time=11,878.636..13,593.583 rows=300,565 loops=3)

  • Timing: Generation 1.756 ms, Inlining 48.782 ms, Optimization 56.843 ms, Emission 48.897 ms, Total 156.279 ms
  • Timing: Generation 1.735 ms, Inlining 83.387 ms, Optimization 93.419 ms, Emission 56.464 ms, Total 235.005 ms
  • Options: Inlining true, Optimization true, Expressions true, Deforming true
  • Options: Inlining true, Optimization true, Expressions true, Deforming true
  • Functions: 19
  • Functions: 19
  • Worker 1: actual time=11,846.028..13564.699 rows=293,565 loops=1
  • Worker 0: actual time=11,837.317..13543.045 rows=298,447 loops=1
  • Output: q.id
  • Hash Cond: (q.transform_job_execution_id = tje.id)
  • Buffers: shared hit=11,483 read=264,259, temp read=58,256 written=58,616
3. 4,423.522 4,423.522 ↑ 1.2 5,220,741 3 / 3

Parallel Seq Scan on orchestration.transform_job_execution_queue q (cost=0.00..189,532.67 rows=6,520,767 width=8) (actual time=0.077..4,423.522 rows=5,220,741 loops=3)

4. 164.730 6,201.430 ↑ 1.2 536,346 3 / 3

Parallel Hash (cost=298,780.81..298,780.81 rows=669,945 width=4) (actual time=6,201.427..6,201.430 rows=536,346 loops=3)

  • Buffers: shared hit=4,080 read=87,563, temp read=18,941 written=19,364
  • Buffers: shared hit=3,650 read=86,817, temp read=19,235 written=19,280
  • Worker 1: actual time=6,166.144..6166.146 rows=537,978 loops=1
  • Worker 1: actual time=0.170..4418.377 rows=5,169,699 loops=1
  • Worker 0: actual time=6,170.992..6170.995 rows=529,319 loops=1
  • Worker 0: actual time=0.041..4453.829 rows=5,146,904 loops=1
  • Output: tje.id
  • Output: q.id, q.transform_job_execution_id
  • Buffers: shared hit=6,484 read=144,879, temp written=4,828
  • Buffers: shared hit=4,945 read=119,380
  • Buckets: 131,072 Batches: 32 Memory Usage: 3,040kB
5. 988.553 6,036.700 ↑ 1.2 536,346 3 / 3

Hash Join (cost=8.03..298,780.81 rows=669,945 width=4) (actual time=170.095..6,036.700 rows=536,346 loops=3)

  • Buffers: shared hit=2,347 read=48,179, temp written=1,612
  • Buffers: shared hit=1,970 read=47,857, temp written=1,604
  • Buffers: shared hit=1,706 read=39,384
  • Buffers: shared hit=1,653 read=38,960
  • Worker 1: actual time=234.005..6000.061 rows=537,978 loops=1
  • Worker 0: actual time=160.825..6006.405 rows=529,319 loops=1
  • Output: tje.id
  • Inner Unique: true
  • Hash Cond: (tje.transform_job_id = tj.id)
  • Buffers: shared hit=6,484 read=144,879
6. 4,880.220 4,880.220 ↑ 1.3 9,320,928 3 / 3

Parallel Seq Scan on orchestration.transform_job_execution tje (cost=0.00..267,864.27 rows=11,651,227 width=8) (actual time=2.152..4,880.220 rows=9,320,928 loops=3)

7. 0.015 167.927 ↑ 1.0 23 3 / 3

Hash (cost=7.74..7.74 rows=23 width=4) (actual time=167.926..167.927 rows=23 loops=3)

  • Buffers: shared hit=2,347 read=48,179
  • Buffers: shared hit=1,970 read=47,857
  • Worker 1: actual time=233.588..233.589 rows=23 loops=1
  • Worker 1: actual time=0.398..4774.019 rows=9,334,016 loops=1
  • Worker 0: actual time=6.050..4865.475 rows=9,204,907 loops=1
  • Worker 0: actual time=154.756..154.757 rows=23 loops=1
  • Output: tje.id, tje.transform_job_id, tje.file_id
  • Output: tj.id
  • Buffers: shared hit=6,473 read=144,879
  • Buffers: shared hit=11
  • Buckets: 1,024 Batches: 1 Memory Usage: 9kB
8. 167.898 167.912 ↑ 1.0 23 3 / 3

Bitmap Heap Scan on orchestration.transform_job tj (cost=4.45..7.74 rows=23 width=4) (actual time=167.905..167.912 rows=23 loops=3)

  • Buffers: shared hit=4
  • Buffers: shared hit=4
  • Buffers: shared hit=2,343 read=48,179
  • Buffers: shared hit=1,966 read=47,857
  • Worker 1: actual time=233.564..233.570 rows=23 loops=1
  • Worker 0: actual time=154.737..154.742 rows=23 loops=1
  • Recheck Cond: (tj.transform_script_id = 1)
  • Output: tj.id
  • Heap Blocks: exact=1
  • Buffers: shared hit=11
9. 0.014 0.014 ↑ 1.0 23 3 / 3

Bitmap Index Scan on transform_job_transform_script_id_raw_input_id_key (cost=0.00..4.45 rows=23 width=0) (actual time=0.014..0.014 rows=23 loops=3)

  • Buffers: shared hit=4
  • Buffers: shared hit=4
  • Worker 1: actual time=0.017..0.017 rows=23 loops=1
  • Worker 0: actual time=0.013..0.013 rows=23 loops=1
  • Index Cond: (tj.transform_script_id = 1)
  • Buffers: shared hit=8
  • Buffers: shared hit=3
  • Buffers: shared hit=3
Planning time : 0.832 ms
Execution time : 14,070.881 ms