explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 8kvB : Optimization for: plan #YGGO

Settings

Optimization path:

# exclusive inclusive rows x rows loops node
1. 0.000 11,948.799 ↓ 0.0 0 1

Limit (cost=5.87..391,393.15 rows=76 width=88) (actual time=11,948.799..11,948.799 rows=0 loops=1)

  • Output: dm.zrodlo, dm.id_metadanych, dok_m.id, dok_m.identyfikator_epwd, dok_m.typ_odpowiedzi
  • Buffers: shared hit=5,960,350
2.          

Initplan (for Limit)

3. 0.018 0.018 ↑ 1.0 1 1

Index Scan using uq_slow_typy_dokumentu_kod on slowniki.slow_typy_dokumentu (cost=0.14..4.16 rows=1 width=4) (actual time=0.018..0.018 rows=1 loops=1)

  • Output: slow_typy_dokumentu.id
  • Index Cond: ((slow_typy_dokumentu.kod)::text = 'KOM'::text)
  • Buffers: shared hit=2
4. 0.003 11,948.796 ↓ 0.0 0 1

Nested Loop (cost=1.70..391,388.99 rows=76 width=88) (actual time=11,948.796..11,948.796 rows=0 loops=1)

  • Output: dm.zrodlo, dm.id_metadanych, dok_m.id, dok_m.identyfikator_epwd, dok_m.typ_odpowiedzi
  • Join Filter: (m.id = dm.id_metadanych)
  • Buffers: shared hit=5,960,350
5. 307.012 11,948.793 ↓ 0.0 0 1

Nested Loop (cost=1.14..391,341.26 rows=76 width=31) (actual time=11,948.793..11,948.793 rows=0 loops=1)

  • Output: m.id, dok_m.id, dok_m.identyfikator_epwd, dok_m.typ_odpowiedzi, dok_m.id_poswiadczenia
  • Buffers: shared hit=5,960,350
6. 63.073 10,123.538 ↑ 1.1 506,081 1

Nested Loop (cost=0.57..38,643.16 rows=564,631 width=12) (actual time=0.049..10,123.538 rows=506,081 loops=1)

  • Output: m.id, m.data_poswiadczenia
  • Buffers: shared hit=3,796,736
7. 0.055 0.055 ↑ 1.0 1 1

Seq Scan on slowniki.slow_typy_dokumentu s (cost=0.00..7.15 rows=1 width=4) (actual time=0.006..0.055 rows=1 loops=1)

  • Output: s.id, s.kod, s.nazwa, s.opis, s.wersja, s.systemowy, s.sformalizowany, s.inicjuje_sprawe, s.mozliwe_zalaczniki, s.kod_grupy_dokumentow, s.do_korespondencji, s.adres_crd
  • Filter: ((s.kod)::text = 'UPD'::text)
  • Rows Removed by Filter: 171
  • Buffers: shared hit=5
8. 10,060.410 10,060.410 ↑ 1.3 506,081 1

Index Only Scan using idx_metadane_ts2 on esp.metadane m (cost=0.57..31,891.81 rows=674,420 width=16) (actual time=0.035..10,060.410 rows=506,081 loops=1)

  • Output: m.id_typu_dokumentu, m.typ_odpowiedzi, m.kod_statusu_metadanych, m.data_poswiadczenia, m.id_poswiadczenia, m.id, m.identyfikator_epwd
  • Index Cond: (m.id_typu_dokumentu = s.id)
  • Filter: ((m.kod_statusu_metadanych)::text <> ALL ('{UPDW,UPDWB}'::text[]))
  • Rows Removed by Filter: 34,297,562
  • Heap Fetches: 0
  • Buffers: shared hit=3,796,731
9. 1,518.243 1,518.243 ↓ 0.0 0 506,081

Index Only Scan using idx_metadane_ts3 on esp.metadane dok_m (cost=0.57..0.61 rows=1 width=27) (actual time=0.003..0.003 rows=0 loops=506,081)

  • Output: dok_m.id_poswiadczenia, dok_m.id_typu_dokumentu, dok_m.typ_odpowiedzi, dok_m.data_poswiadczenia, dok_m.id, dok_m.identyfikator_epwd
  • Index Cond: (dok_m.id_poswiadczenia = m.id)
  • Filter: ((dok_m.id_typu_dokumentu <> $0) AND (((dok_m.typ_odpowiedzi)::text = 'EDS-INF-PRZ'::text) OR ((m.data_poswiadczenia IS NOT NULL) AND (m.data_poswiadczenia >= (current_date - '14 days'::interval)))))
  • Rows Removed by Filter: 1
  • Heap Fetches: 0
  • Buffers: shared hit=2,163,614
10. 0.000 0.000 ↓ 0.0 0

Index Scan using pk_dokumenty_merytoryczne on esp.dokumenty_merytoryczne dm (cost=0.57..0.62 rows=1 width=65) (never executed)

  • Output: dm.id_metadanych, dm.zrodlo
  • Index Cond: (dm.id_metadanych = dok_m.id_poswiadczenia)