explain.depesz.com

PostgreSQL's explain analyze made readable

Result: EsT8

Settings
# exclusive inclusive rows x rows loops node
1. 0.007 894.279 ↓ 24.0 24 1

Limit (cost=109,948.48..109,948.91 rows=1 width=1,772) (actual time=894.128..894.279 rows=24 loops=1)

  • Buffers: shared hit=20668
2. 0.150 894.272 ↓ 24.0 24 1

Unique (cost=109,948.48..109,948.91 rows=1 width=1,772) (actual time=894.128..894.272 rows=24 loops=1)

  • Buffers: shared hit=20668
3. 0.373 894.122 ↓ 24.0 24 1

Sort (cost=109,948.48..109,948.48 rows=1 width=1,772) (actual time=894.113..894.122 rows=24 loops=1)

  • Sort Key: document_base.number_value, document_base.number, document_base.id, document_base.version, document_base.type_id, document_base.ent_id, document_base.department_id, document_base.mol_id, document_base.supplier_id, document_base.contragent_category, document_base.last_modified, document_base.last_editor_id, document_base.old_doc_id, document_base.date_formatting, document_base.date_posting, document_base.document_storno_id, document_base.currency_id, document_base.currency_sum, document_base.total, document_base.kbk_id, document_base.kvd_id, document_base.kvd_analytic_id, document_base.warehouse_id, document_base.note, document_base.batch_processing_note, document_base.is_doc_base, document_base.created, document_invoice.invoice_date, document_invoice.invoice_nds_id, document_invoice.invoice_number, document_invoice.invoice_generate, document_invoice.country_id, document_invoice.bill_of_entry, document_invoice.invoice_shipper_id, document_invoice.invoice_consignee_id, document_invoice.service, document_invoice.invoice_code_kind_operation, document_invoice.contract_id, document_types.created, document_types.modified, document_types.external_id, document_types.document_code, document_types.document_name, document_types.name, dicts_department.id, dicts_department.version, dicts_department.state, dicts_department.begin, dicts_department."end", dicts_department.created, dicts_department.modified, dicts_department.external_id, dicts_department.ent_id, dicts_department.direct_id, dicts_department.code, dicts_department.name, dicts_department.chief_id, contragent_mol.id, contragent_mol.version, contragent_mol.state, contragent_mol.begin, contragent_mol."end", contragent_mol.created, contragent_mol.modified, contragent_mol.external_id, contragent_mol.ent_id, contragent_mol.direct_id, contragent_mol.name, contragent_mol.person_id, contragent_mol.position_id, contragent_mol.tabel_num, contragent_mol.warehouse_id, contragent_supplier.id, contragent_supplier.version, contragent_supplier.state, contragent_supplier.begin, contragent_supplier."end", contragent_supplier.created, contragent_supplier.modified, contragent_supplier.external_id, contragent_supplier.ent_id, contragent_supplier.direct_id, contragent_supplier.name, contragent_supplier.group_id, contragent_supplier.supplier_type, contragent_supplier.person_id, contragent_supplier.corporation_id, contragent_supplier.uuid, contragent_supplier.country_id, contragent_corporation.id, contragent_corporation.short_name, contragent_corporation.full_name, contragent_corporation.inn, contragent_corporation.kpp, contragent_corporation.filial, contragent_corporation.phone, contragent_corporation.email, contragent_corporation.ent_type, contragent_corporation.okved, contragent_corporation.ogrn, contragent_corporation.okpo, contragent_corporation.okato, contragent_corporation.oktmo, contragent_corporation.ur_address_id, contragent_corporation.fact_address_id, contragent_corporation.mail_address_id, kbk.id, kbk.version, kbk.state, kbk.begin, kbk."end", kbk.created, kbk.modified, kbk.ent_id, kbk.code, kbk.full_code, kbk.code_without_dots, kbk.name, kbk.fullname, kbk.kbk_type, kbk.grbs_id, kbk.fkr_section_id, kbk.budget_target_id, kbk.outgo_type_id, kbk.income_code_id, kbk.funding_source_id, kbk.oktmo_id, kbk.analytic_group_id, kbk.acc_standalone, kbk.acc_budget, kbk.acc_official, kbk.external_id, kbk.direct_id, kbk_activity_type.id, kbk_activity_type.version, kbk_activity_type.state, kbk_activity_type.begin, kbk_activity_type."end", kbk_activity_type.created, kbk_activity_type.modified, kbk_activity_type.external_id, kbk_activity_type.ent_id, kbk_activity_type.direct_id, kbk_activity_type.code, kbk_activity_type.name, kbk_activity_type.analytic_id, kbk_activity_type.bank_props_id, unidictrec.id, unidictrec.version, unidictrec.state, unidictrec.begin, unidictrec."end", unidictrec.created, unidictrec.modified, unidictrec.external_id, unidictrec.unidict_id, unidictrec.code, unidictrec.name, contract.id, contract.created, contract.modified, contract.external_id, contract.ent_id, contract.type, contract.department_id, doc_external_relation.id, doc_external_relation.eid, doc_external_relation.service, doc_external_relation.service_name, doc_external_relation.real_type_id, external_relation_with_document.externalrelation_ptr_id, external_relation_with_document.document_id
  • Sort Method: quicksort Memory: 52kB
  • Buffers: shared hit=20668
4. 0.072 893.749 ↓ 24.0 24 1

Nested Loop (cost=81,907.9..109,948.47 rows=1 width=1,772) (actual time=611.185..893.749 rows=24 loops=1)

  • Buffers: shared hit=20668
5. 0.101 893.677 ↓ 24.0 24 1

Nested Loop (cost=81,907.9..109,932.39 rows=1 width=1,506) (actual time=611.18..893.677 rows=24 loops=1)

  • Buffers: shared hit=20668
6. 0.066 893.576 ↓ 24.0 24 1

Nested Loop (cost=81,907.9..109,871.54 rows=1 width=1,498) (actual time=611.172..893.576 rows=24 loops=1)

  • Buffers: shared hit=20668
7. 0.065 893.510 ↓ 24.0 24 1

Nested Loop (cost=81,907.48..109,870.06 rows=1 width=1,460) (actual time=611.166..893.51 rows=24 loops=1)

  • Buffers: shared hit=20668
8. 0.098 893.445 ↓ 24.0 24 1

Nested Loop (cost=81,907.05..109,863.43 rows=1 width=1,309) (actual time=611.161..893.445 rows=24 loops=1)

  • Buffers: shared hit=20668
9. 0.067 893.203 ↓ 24.0 24 1

Nested Loop (cost=81,906.76..109,861.78 rows=1 width=1,186) (actual time=611.145..893.203 rows=24 loops=1)

  • Buffers: shared hit=20596
10. 0.070 892.944 ↓ 24.0 24 1

Nested Loop (cost=81,906.34..109,857.03 rows=1 width=993) (actual time=611.123..892.944 rows=24 loops=1)

  • Buffers: shared hit=20508
11. 0.071 892.706 ↓ 24.0 24 1

Nested Loop (cost=81,905.91..109,855.44 rows=1 width=754) (actual time=611.104..892.706 rows=24 loops=1)

  • Buffers: shared hit=20432
12. 0.083 892.395 ↓ 24.0 24 1

Nested Loop (cost=81,905.49..109,850.31 rows=1 width=590) (actual time=611.084..892.395 rows=24 loops=1)

  • Buffers: shared hit=20336
13. 11.253 892.072 ↓ 24.0 24 1

Nested Loop (cost=81,905.07..109,847.74 rows=1 width=483) (actual time=611.062..892.072 rows=24 loops=1)

  • Buffers: shared hit=20240
14. 0.106 869.803 ↓ 24.0 24 1

Nested Loop (cost=81,905.07..109,750.59 rows=1 width=392) (actual time=609.88..869.803 rows=24 loops=1)

  • Buffers: shared hit=19280
15. 231.682 869.385 ↑ 30.5 24 1

Hash Join (cost=81,904.64..105,650.62 rows=733 width=240) (actual time=609.821..869.385 rows=24 loops=1)

  • Buffers: shared hit=19184
16. 198.239 198.239 ↓ 1.0 1,096,485 1

Seq Scan on document_invoice document_invoice (cost=0..19,626.84 rows=1,096,484 width=47) (actual time=0.018..198.239 rows=1,096,485 loops=1)

  • Buffers: shared hit=8662
17. 3.789 439.464 ↑ 2.2 4,630 1

Hash (cost=81,776.06..81,776.06 rows=10,286 width=193) (actual time=439.464..439.464 rows=4,630 loops=1)

  • Buffers: shared hit=10522
18. 11.676 435.675 ↑ 2.2 4,630 1

Bitmap Heap Scan on document_base document_base (cost=43,895.32..81,776.06 rows=10,286 width=193) (actual time=424.797..435.675 rows=4,630 loops=1)

  • Buffers: shared hit=10522
19. 19.076 423.999 ↓ 0.0 0 1

BitmapAnd (cost=43,895.32..43,895.32 rows=10,286 width=0) (actual time=423.999..423.999 rows=0 loops=1)

  • Buffers: shared hit=6854
20. 14.164 14.164 ↑ 1.5 47,215 1

Bitmap Index Scan on document_base_ent_id_date_formatting_f1cc9952_idx (cost=0..2,134.81 rows=70,050 width=0) (actual time=14.163..14.164 rows=47,215 loops=1)

  • Index Cond: ((document_base.ent_id = ANY ('{8210,8211,1086,1599,1600,1608,1609,1610,1611,1612,1626,1627,1628,1634,1636,1639,1640,1641,1642,1643,1677,1680,1686,1687,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,837,838,839,843,844,845,847,851,853,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,1421,1422,1423,1433}'::bigint[])) AND (document_base.date_formatting <= '2019-12-31'::date) AND (document_base.date_formatting >= '2019-01-01'::date))
  • Buffers: shared hit=759
21. 390.759 390.759 ↑ 1.0 2,229,645 1

Bitmap Index Scan on document_base_state (cost=0..41,755.12 rows=2,260,625 width=0) (actual time=390.759..390.759 rows=2,229,645 loops=1)

  • Index Cond: (document_base.state = 1)
  • Buffers: shared hit=6095
22. 0.312 0.312 ↑ 1.0 1 24

Index Scan using document_types_pkey on document_types document_types (cost=0.43..5.58 rows=1 width=152) (actual time=0.013..0.013 rows=1 loops=24)

  • Index Cond: (document_types.id = document_base.type_id)
  • Filter: (document_base.ent_id = document_types.ent_id)
  • Buffers: shared hit=96
23. 11.016 11.016 ↑ 1.0 2,540 24

Seq Scan on dicts_department dicts_department (cost=0..65.4 rows=2,540 width=91) (actual time=0.005..0.459 rows=2,540 loops=24)

  • Buffers: shared hit=960
24. 0.240 0.240 ↑ 1.0 1 24

Index Scan using contragent_mol_pkey on contragent_mol contragent_mol (cost=0.42..2.55 rows=1 width=107) (actual time=0.01..0.01 rows=1 loops=24)

  • Index Cond: (document_base.mol_id = contragent_mol.id)
  • Buffers: shared hit=96
25. 0.240 0.240 ↑ 1.0 1 24

Index Scan using contragent_supplier_pkey on contragent_supplier contragent_supplier (cost=0.43..5.12 rows=1 width=164) (actual time=0.01..0.01 rows=1 loops=24)

  • Index Cond: (document_base.supplier_id = contragent_supplier.id)
  • Buffers: shared hit=96
26. 0.168 0.168 ↑ 1.0 1 24

Index Scan using contragent_corporation_pkey on contragent_corporation contragent_corporation (cost=0.42..1.58 rows=1 width=239) (actual time=0.007..0.007 rows=1 loops=24)

  • Index Cond: (contragent_supplier.corporation_id = contragent_corporation.id)
  • Buffers: shared hit=76
27. 0.192 0.192 ↑ 1.0 1 24

Index Scan using kbk_pkey on kbk kbk (cost=0.42..4.74 rows=1 width=193) (actual time=0.007..0.008 rows=1 loops=24)

  • Index Cond: (document_base.kbk_id = kbk.id)
  • Buffers: shared hit=88
28. 0.144 0.144 ↑ 1.0 1 24

Index Scan using kbk_activity_type_pkey on kbk_activity_type kbk_activity_type (cost=0.29..1.64 rows=1 width=123) (actual time=0.006..0.006 rows=1 loops=24)

  • Index Cond: (document_base.kvd_id = kbk_activity_type.id)
  • Buffers: shared hit=72
29. 0.000 0.000 ↓ 0.0 0 24

Index Scan using unidictrec_pkey on unidictrec unidictrec (cost=0.43..6.62 rows=1 width=151) (actual time=0..0 rows=0 loops=24)

  • Index Cond: (document_base.kvd_analytic_id = unidictrec.id)
30. 0.000 0.000 ↓ 0.0 0 24

Index Scan using contract_pkey on contract contract (cost=0.42..1.48 rows=1 width=38) (actual time=0..0 rows=0 loops=24)

  • Index Cond: (document_invoice.contract_id = contract.id)
31. 0.000 0.000 ↓ 0.0 0 24

Seq Scan on external_relation_with_document external_relation_with_document (cost=0..32.6 rows=2,260 width=8) (actual time=0..0 rows=0 loops=24)

32. 0.000 0.000 ↓ 0.0 0 24

Seq Scan on doc_external_relation doc_external_relation (cost=0..12.7 rows=270 width=266) (actual time=0..0 rows=0 loops=24)