explain.depesz.com

PostgreSQL's explain analyze made readable

Result: owUt : Optimization for: plan #vAGL

Settings

Optimization path:

# exclusive inclusive rows x rows loops node
1. 0.181 790.033 ↑ 1.0 1 1

Aggregate (cost=48,984.94..48,984.95 rows=1 width=8) (actual time=790.033..790.033 rows=1 loops=1)

  • Output: count(DISTINCT gebeurteni0_.id)
2. 0.337 789.852 ↓ 500.0 500 1

Nested Loop (cost=29,569.22..48,984.94 rows=1 width=8) (actual time=24.621..789.852 rows=500 loops=1)

  • Output: gebeurteni0_.id
3. 0.000 780.530 ↓ 1,797.0 1,797 1

Nested Loop (cost=29,568.78..48,983.78 rows=1 width=16) (actual time=24.563..780.530 rows=1,797 loops=1)

  • Output: gebeurteni0_.id, aclobjecti1_.id
  • Inner Unique: true
4. 0.980 775.210 ↓ 1,797.0 1,797 1

Nested Loop (cost=29,568.35..48,978.94 rows=1 width=8) (actual time=24.551..775.210 rows=1,797 loops=1)

  • Output: gebeurteni0_.id
5. 3.201 756.260 ↓ 179.7 1,797 1

Nested Loop (cost=29,567.91..48,938.52 rows=10 width=16) (actual time=24.533..756.260 rows=1,797 loops=1)

  • Output: gebeurteni0_.id, aclobjecti4_.id
6. 6.938 251.948 ↓ 143.8 38,547 1

Nested Loop (cost=29,567.48..48,580.98 rows=268 width=16) (actual time=23.489..251.948 rows=38,547 loops=1)

  • Output: projectfas3_.id, aclobjecti4_.id
7. 27.975 178.098 ↓ 11.1 11,152 1

Merge Join (cost=29,567.06..47,629.35 rows=1,004 width=24) (actual time=23.479..178.098 rows=11,152 loops=1)

  • Output: aclobjecti4_.object_id_identity, aclobjecti4_.id, hoedanighe6_.td_project_id
  • Merge Cond: (aclobjecti4_.object_id_identity = hoedanighe6_.td_project_id)
8. 124.224 124.224 ↑ 1.0 276,704 1

Index Scan using idx_acl_object_identity_project on omv.acl_object_identity aclobjecti4_ (cost=0.42..89,492.29 rows=280,124 width=16) (actual time=0.022..124.224 rows=276,704 loops=1)

  • Output: aclobjecti4_.id, aclobjecti4_.object_id_class, aclobjecti4_.object_id_identity, aclobjecti4_.parent_object, aclobjecti4_.owner_sid, aclobjecti4_.entries_inheriting, aclobjecti4_.ct_update
9. 5.452 25.899 ↓ 1.1 11,152 1

Sort (cost=29,566.60..29,591.85 rows=10,100 width=8) (actual time=23.435..25.899 rows=11,152 loops=1)

  • Output: hoedanighe6_.td_project_id
  • Sort Key: hoedanighe6_.td_project_id
  • Sort Method: quicksort Memory: 907kB
10. 17.521 20.447 ↓ 1.1 11,152 1

Bitmap Heap Scan on omv.tr_hoedanigheid hoedanighe6_ (cost=240.26..28,894.84 rows=10,100 width=8) (actual time=4.752..20.447 rows=11,152 loops=1)

  • Output: hoedanighe6_.td_project_id
  • Recheck Cond: (hoedanighe6_.td_persoon_id = '11017'::bigint)
  • Filter: (((hoedanighe6_.datum_tot > '2020-03-25'::date) OR (hoedanighe6_.datum_tot IS NULL)) AND (hoedanighe6_.datum_van <= '2020-03-25'::date))
  • Heap Blocks: exact=9926
11. 2.926 2.926 ↓ 1.1 11,152 1

Bitmap Index Scan on idx_tr_hoedanigheid_td_persoon_id (cost=0.00..237.73 rows=10,307 width=0) (actual time=2.926..2.926 rows=11,152 loops=1)

  • Index Cond: (hoedanighe6_.td_persoon_id = '11017'::bigint)
12. 66.912 66.912 ↑ 1.0 3 11,152

Index Scan using idx_tr_projectfase_td_project_id on omv.tr_projectfase projectfas3_ (cost=0.42..0.92 rows=3 width=16) (actual time=0.003..0.006 rows=3 loops=11,152)

  • Output: projectfas3_.id, projectfas3_.uuid, projectfas3_.td_project_id, projectfas3_.tp_fase_id, projectfas3_.dt_start, projectfas3_.dt_eind, projectfas3_.dt_uitersteeinde, projectfas3_.dt_verwachteinde, projectfas3_.definitief, projectfas3_.actief, projectfas3_.ts_creatie, projectfas3_.ts_modificatie, projectfas3_.ct_update, projectfas3_.permanent_uuid, projectfas3_.dt_uiterstebesluit
  • Index Cond: (projectfas3_.td_project_id = aclobjecti4_.object_id_identity)
13. 501.111 501.111 ↓ 0.0 0 38,547

Index Scan using idx_td_gebeurtenis_tr_projectfase_id on omv.td_gebeurtenis gebeurteni0_ (cost=0.43..1.32 rows=1 width=16) (actual time=0.013..0.013 rows=0 loops=38,547)

  • Output: gebeurteni0_.id, gebeurteni0_.uuid, gebeurteni0_.datum, gebeurteni0_.td_datablokinhoud_id, gebeurteni0_.tr_projectfase_id, gebeurteni0_.tr_hoedanigheid_id, gebeurteni0_.tp_gebeurtenis_id, gebeurteni0_.registratietijdstip, gebeurteni0_.td_vraag_gebeurtenis_id, gebeurteni0_.tp_gebeurtenis_bericht_status_id, gebeurteni0_.tp_gebeurtenisstatus_id, gebeurteni0_.td_dossier_id, gebeurteni0_.groep_uuid, gebeurteni0_.ts_creatie, gebeurteni0_.ts_modificatie, gebeurteni0_.ct_update, gebeurteni0_.permanent_uuid
  • Index Cond: (gebeurteni0_.tr_projectfase_id = projectfas3_.id)
  • Filter: ((gebeurteni0_.registratietijdstip >= '2020-03-20 00:00:00'::timestamp without time zone) AND (gebeurteni0_.registratietijdstip <= '2020-03-25 23:59:59.999'::timestamp without time zone))
  • Rows Removed by Filter: 9
14. 17.970 17.970 ↑ 1.0 1 1,797

Index Scan using idx_acl_entry_acl_object_identity on omv.acl_entry aclentry5_ (cost=0.44..4.03 rows=1 width=8) (actual time=0.008..0.010 rows=1 loops=1,797)

  • Output: aclentry5_.id, aclentry5_.acl_object_identity, aclentry5_.ace_order, aclentry5_.sid, aclentry5_.mask, aclentry5_.granting, aclentry5_.audit_success, aclentry5_.audit_failure, aclentry5_.ct_update
  • Index Cond: (aclentry5_.acl_object_identity = aclobjecti4_.id)
  • Filter: (aclentry5_.granting AND (aclentry5_.sid = '11017'::bigint))
  • Rows Removed by Filter: 16
15. 5.391 5.391 ↑ 1.0 1 1,797

Index Scan using idx_acl_object_identity_gebeurtenis on omv.acl_object_identity aclobjecti1_ (cost=0.43..4.84 rows=1 width=16) (actual time=0.003..0.003 rows=1 loops=1,797)

  • Output: aclobjecti1_.id, aclobjecti1_.object_id_class, aclobjecti1_.object_id_identity, aclobjecti1_.parent_object, aclobjecti1_.owner_sid, aclobjecti1_.entries_inheriting, aclobjecti1_.ct_update
  • Index Cond: (aclobjecti1_.object_id_identity = gebeurteni0_.id)
16. 8.985 8.985 ↓ 0.0 0 1,797

Index Scan using idx_acl_entry_acl_object_identity on omv.acl_entry aclentry2_ (cost=0.44..1.15 rows=1 width=8) (actual time=0.004..0.005 rows=0 loops=1,797)

  • Output: aclentry2_.id, aclentry2_.acl_object_identity, aclentry2_.ace_order, aclentry2_.sid, aclentry2_.mask, aclentry2_.granting, aclentry2_.audit_success, aclentry2_.audit_failure, aclentry2_.ct_update
  • Index Cond: (aclentry2_.acl_object_identity = aclobjecti1_.id)
  • Filter: (aclentry2_.granting AND (aclentry2_.sid = '11017'::bigint))
  • Rows Removed by Filter: 5
Planning time : 10.298 ms
Execution time : 790.234 ms