explain.depesz.com

PostgreSQL's explain analyze made readable

Result: Lvk4

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

Sort (cost=11,003.04..11,003.05 rows=1 width=36) (actual rows= loops=)

  • Output: job.job_instance_id, job.job_name, exe.job_execution_id
  • Sort Key: job.job_instance_id DESC
2. 0.000 0.000 ↓ 0.0

Hash Join (cost=9,207.60..11,003.03 rows=1 width=36) (actual rows= loops=)

  • Output: job.job_instance_id, job.job_name, exe.job_execution_id
  • Hash Cond: (((job.job_instance_id)::numeric = exe.job_instance_id) AND ((job.job_instance_id)::numeric = wfm_job_execution.job_instance_id))
3. 0.000 0.000 ↓ 0.0

Seq Scan on wfmsch01q.wfm_job_instance job (cost=0.00..1,757.30 rows=1,906 width=28) (actual rows= loops=)

  • Output: job.vpd_key, job.job_instance_id, job.version, job.job_name, job.job_key
  • Filter: ((("current_user"())::text <> ANY ('{wfnadmin,skipvpd}'::text[])) AND vpd_sec_usr.f_sel_policy_all(job.vpd_key, 'WFM_JOB_INSTANCE'::character varying))
4. 0.000 0.000 ↓ 0.0

Hash (cost=9,203.57..9,203.57 rows=269 width=20) (actual rows= loops=)

  • Output: exe.job_execution_id, exe.job_instance_id, wfm_job_execution.job_instance_id
  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
5. 0.000 0.000 ↓ 0.0

Hash Join (cost=9,128.12..9,203.57 rows=269 width=20) (actual rows= loops=)

  • Output: exe.job_execution_id, exe.job_instance_id, wfm_job_execution.job_instance_id
  • Hash Cond: ((max(wfm_job_execution.create_time)) = exe.create_time)
6. 0.000 0.000 ↓ 0.0

HashAggregate (cost=4,548.34..4,592.00 rows=1,164 width=14) (actual rows= loops=)

  • Output: wfm_job_execution.job_instance_id, max(wfm_job_execution.create_time)
  • Group Key: wfm_job_execution.job_instance_id
  • Filter: (count(wfm_job_execution.job_execution_id) < 3)
7. 0.000 0.000 ↓ 0.0

Seq Scan on wfmsch01q.wfm_job_execution (cost=0.00..4,515.74 rows=4,347 width=22) (actual rows= loops=)

  • Output: wfm_job_execution.vpd_key, wfm_job_execution.job_execution_id, wfm_job_execution.version, wfm_job_execution.job_instance_id, wfm_job_execution.create_time, wfm_job_execution.start_time, wfm_job_execution.end_time, wfm_job_execution.status, wfm_job_execution.exit_code, wfm_job_execution.exit_message, wfm_job_execution.last_updated, wfm_job_execution.job_configuration_location
  • Filter: ((("current_user"())::text <> ANY ('{wfnadmin,skipvpd}'::text[])) AND vpd_sec_usr.f_sel_policy_all(wfm_job_execution.vpd_key, 'WFM_JOB_EXECUTION'::character varying))
8. 0.000 0.000 ↓ 0.0

Hash (cost=4,548.34..4,548.34 rows=2,515 width=22) (actual rows= loops=)

  • Output: exe.job_execution_id, exe.job_instance_id, exe.create_time
  • Buckets: 4096 Batches: 1 Memory Usage: 35kB
9. 0.000 0.000 ↓ 0.0

Seq Scan on wfmsch01q.wfm_job_execution exe (cost=0.00..4,548.34 rows=2,515 width=22) (actual rows= loops=)

  • Output: exe.job_execution_id, exe.job_instance_id, exe.create_time
  • Filter: (((exe.status)::text = 'FAILED'::text) AND (("current_user"())::text <> ANY ('{wfnadmin,skipvpd}'::text[])) AND vpd_sec_usr.f_sel_policy_all(exe.vpd_key, 'WFM_JOB_EXECUTION'::character varying))