explain.depesz.com

PostgreSQL's explain analyze made readable

Result: V2Ne : katello errata

Settings
# exclusive inclusive rows x rows loops node
1. 0.012 2,260.715 ↑ 1.0 100 1

Limit (cost=5,758.89..5,759.14 rows=100 width=8) (actual time=2,260.698..2,260.715 rows=100 loops=1)

  • Buffers: shared hit=2147, temp read=577 written=575
2. 0.661 2,260.703 ↑ 51.2 100 1

Sort (cost=5,758.89..5,771.69 rows=5,121 width=8) (actual time=2,260.696..2,260.703 rows=100 loops=1)

  • Sort Key: public.katello_errata.updated, public.katello_errata.id
  • Sort Method: top-N heapsort Memory: 29kB
  • Buffers: shared hit=2147, temp read=577 written=575
3. 279.239 2,260.042 ↑ 1.1 4,843 1

HashAggregate (cost=5,511.96..5,563.17 rows=5,121 width=8) (actual time=2,259.301..2,260.042 rows=4,843 loops=1)

  • Buffers: shared hit=2147, temp read=577 written=575
4. 1,911.086 1,980.803 ↓ 29.3 1,448,773 1

Hash Right Join (cost=2,583.83..5,141.15 rows=49,441 width=8) (actual time=66.007..1,980.803 rows=1,448,773 loops=1)

  • Hash Cond: (katello_erratum_packages.erratum_id = public.katello_errata.id)
  • Filter: (((public.katello_errata.severity)::text ~~* '%1%'::text) OR ((public.katello_errata.errata_type)::text ~~* '%1%'::text) OR ((katello_erratum_cves.cve_id)::text ~~* '%1%'::text) OR ((katello_erratum_bugzillas.bug_id)::text ~~* '%1%'::text) OR ((katello_erratum_packages.nvrea)::text ~~* '%1%'::text) OR ((katello_erratum_packages.name)::text ~~* '%1%'::text))
  • Rows Removed by Filter: 1310
  • Buffers: shared hit=2147, temp read=577 written=575
5. 3.854 3.854 ↓ 1.0 32,973 1

Seq Scan on katello_erratum_packages (cost=0.00..911.13 rows=32,813 width=63) (actual time=0.004..3.854 rows=32,973 loops=1)

  • Buffers: shared hit=583
6. 22.732 65.863 ↓ 11.9 91,848 1

Hash (cost=2,487.38..2,487.38 rows=7,716 width=41) (actual time=65.863..65.863 rows=91,848 loops=1)

  • Buckets: 1024 Batches: 2 (originally 1) Memory Usage: 4097kB
  • Buffers: shared hit=1564, temp written=313
7. 19.979 43.131 ↓ 11.9 91,848 1

Hash Right Join (cost=1,842.69..2,487.38 rows=7,716 width=41) (actual time=20.658..43.131 rows=91,848 loops=1)

  • Hash Cond: (katello_erratum_bugzillas.erratum_id = public.katello_errata.id)
  • Buffers: shared hit=1564
8. 2.517 2.517 ↓ 1.0 20,600 1

Seq Scan on katello_erratum_bugzillas (cost=0.00..464.69 rows=20,569 width=11) (actual time=0.004..2.517 rows=20,600 loops=1)

  • Buffers: shared hit=259
9. 2.255 20.635 ↓ 5.0 9,573 1

Hash (cost=1,818.68..1,818.68 rows=1,921 width=34) (actual time=20.635..20.635 rows=9,573 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 589kB
  • Buffers: shared hit=1305
10. 2.629 18.380 ↓ 5.0 9,573 1

Hash Right Join (cost=1,639.03..1,818.68 rows=1,921 width=34) (actual time=15.083..18.380 rows=9,573 loops=1)

  • Hash Cond: (katello_erratum_cves.erratum_id = public.katello_errata.id)
  • Buffers: shared hit=1305
11. 0.690 0.690 ↓ 1.0 5,445 1

Seq Scan on katello_erratum_cves (cost=0.00..133.29 rows=5,429 width=18) (actual time=0.004..0.690 rows=5,445 loops=1)

  • Buffers: shared hit=79
12. 1.213 15.061 ↓ 2.8 5,121 1

Hash (cost=1,616.38..1,616.38 rows=1,812 width=20) (actual time=15.061..15.061 rows=5,121 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 266kB
  • Buffers: shared hit=1226
13. 2.878 13.848 ↓ 2.8 5,121 1

Hash Semi Join (cost=799.89..1,616.38 rows=1,812 width=20) (actual time=10.041..13.848 rows=5,121 loops=1)

  • Hash Cond: (public.katello_errata.id = public.katello_errata.id)
  • Buffers: shared hit=1226
14. 0.949 0.949 ↑ 1.0 5,121 1

Seq Scan on katello_errata (cost=0.00..780.21 rows=5,121 width=20) (actual time=0.006..0.949 rows=5,121 loops=1)

  • Buffers: shared hit=729
15. 0.877 10.021 ↓ 2.8 5,121 1

Hash (cost=777.24..777.24 rows=1,812 width=8) (actual time=10.021..10.021 rows=5,121 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 201kB
  • Buffers: shared hit=497
16. 1.701 9.144 ↓ 2.8 5,121 1

Hash Semi Join (cost=285.15..777.24 rows=1,812 width=8) (actual time=6.429..9.144 rows=5,121 loops=1)

  • Hash Cond: (public.katello_errata.id = katello_repository_errata.erratum_id)
  • Buffers: shared hit=497
17. 1.043 1.043 ↑ 1.0 5,121 1

Index Only Scan Backward using katello_errata_pkey on katello_errata (cost=0.00..455.81 rows=5,121 width=4) (actual time=0.014..1.043 rows=5,121 loops=1)

  • Heap Fetches: 1727
  • Buffers: shared hit=396
18. 2.064 6.400 ↓ 4.0 7,250 1

Hash (cost=262.50..262.50 rows=1,812 width=4) (actual time=6.400..6.400 rows=7,250 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 255kB
  • Buffers: shared hit=101
19. 2.111 4.336 ↓ 4.0 7,250 1

Nested Loop (cost=203.72..262.50 rows=1,812 width=4) (actual time=0.673..4.336 rows=7,250 loops=1)

  • Buffers: shared hit=101
20. 0.010 0.149 ↓ 4.0 4 1

HashAggregate (cost=176.54..176.55 rows=1 width=4) (actual time=0.148..0.149 rows=4 loops=1)

  • Buffers: shared hit=10
21. 0.015 0.139 ↓ 4.0 4 1

Nested Loop (cost=157.96..176.54 rows=1 width=4) (actual time=0.108..0.139 rows=4 loops=1)

  • Join Filter: (public.katello_repositories.root_id = public.katello_root_repositories.id)
  • Rows Removed by Join Filter: 12
  • Buffers: shared hit=10
22. 0.008 0.008 ↓ 4.0 4 1

Index Only Scan using katello_root_repositories_pkey on katello_root_repositories (cost=0.00..8.27 rows=1 width=8) (actual time=0.005..0.008 rows=4 loops=1)

  • Heap Fetches: 4
  • Buffers: shared hit=2
23. 0.040 0.116 ↑ 2.2 4 4

Seq Scan on katello_repositories (cost=157.96..168.16 rows=9 width=8) (actual time=0.026..0.029 rows=4 loops=4)

  • Filter: ((hashed SubPlan 1) OR (hashed SubPlan 2) OR (hashed SubPlan 3) OR (hashed SubPlan 4))
  • Buffers: shared hit=8
24.          

SubPlan (forSeq Scan)

25. 0.011 0.076 ↑ 1.2 4 1

Nested Loop Semi Join (cost=8.28..29.09 rows=5 width=4) (actual time=0.051..0.076 rows=4 loops=1)

  • Join Filter: (public.katello_repositories.root_id = public.katello_root_repositories.id)
  • Rows Removed by Join Filter: 6
  • Buffers: shared hit=4
26. 0.005 0.005 ↑ 2.5 4 1

Seq Scan on katello_repositories (cost=0.00..10.10 rows=10 width=8) (actual time=0.002..0.005 rows=4 loops=1)

  • Buffers: shared hit=1
27. 0.006 0.060 ↓ 2.0 2 4

Materialize (cost=8.28..18.84 rows=1 width=8) (actual time=0.011..0.015 rows=2 loops=4)

  • Buffers: shared hit=3
28. 0.029 0.054 ↓ 4.0 4 1

Hash Join (cost=8.28..18.84 rows=1 width=8) (actual time=0.038..0.054 rows=4 loops=1)

  • Hash Cond: (katello_products.id = public.katello_root_repositories.product_id)
  • Buffers: shared hit=3
29. 0.012 0.012 ↑ 1.6 25 1

Seq Scan on katello_products (cost=0.00..10.40 rows=40 width=4) (actual time=0.004..0.012 rows=25 loops=1)

  • Buffers: shared hit=1
30. 0.004 0.013 ↓ 4.0 4 1

Hash (cost=8.27..8.27 rows=1 width=12) (actual time=0.013..0.013 rows=4 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 1kB
  • Buffers: shared hit=2
31. 0.009 0.009 ↓ 4.0 4 1

Index Scan using katello_root_repositories_pkey on katello_root_repositories (cost=0.00..8.27 rows=1 width=12) (actual time=0.003..0.009 rows=4 loops=1)

  • Buffers: shared hit=2
32. 0.000 0.000 ↓ 0.0 0

Nested Loop Semi Join (cost=10.22..61.83 rows=35 width=4) (never executed)

33. 0.000 0.000 ↓ 0.0 0

Hash Join (cost=10.22..40.17 rows=70 width=8) (never executed)

  • Hash Cond: (katello_content_view_repositories.repository_id = public.katello_repositories.id)
34. 0.000 0.000 ↓ 0.0 0

Seq Scan on katello_content_view_repositories (cost=0.00..24.00 rows=1,400 width=8) (never executed)

35. 0.000 0.000 ↓ 0.0 0

Hash (cost=10.10..10.10 rows=10 width=4) (never executed)

36. 0.000 0.000 ↓ 0.0 0

Seq Scan on katello_repositories (cost=0.00..10.10 rows=10 width=4) (never executed)

37. 0.000 0.000 ↓ 0.0 0

Index Only Scan using katello_content_views_pkey on katello_content_views (cost=0.00..0.30 rows=1 width=4) (never executed)

  • Index Cond: (id = katello_content_view_repositories.content_view_id)
  • Heap Fetches: 0
38. 0.000 0.000 ↓ 0.0 0

Nested Loop Semi Join (cost=10.22..40.38 rows=5 width=4) (never executed)

39. 0.000 0.000 ↓ 0.0 0

Hash Join (cost=10.22..37.24 rows=10 width=8) (never executed)

  • Hash Cond: (katello_content_view_versions.id = public.katello_repositories.content_view_version_id)
40. 0.000 0.000 ↓ 0.0 0

Seq Scan on katello_content_view_versions (cost=0.00..22.30 rows=1,230 width=8) (never executed)

41. 0.000 0.000 ↓ 0.0 0

Hash (cost=10.10..10.10 rows=10 width=8) (never executed)

42. 0.000 0.000 ↓ 0.0 0

Seq Scan on katello_repositories (cost=0.00..10.10 rows=10 width=8) (never executed)

43. 0.000 0.000 ↓ 0.0 0

Index Only Scan using katello_content_views_pkey on katello_content_views (cost=0.00..0.31 rows=1 width=4) (never executed)

  • Index Cond: (id = katello_content_view_versions.content_view_id)
  • Heap Fetches: 0
44. 0.000 0.000 ↓ 0.0 0

Nested Loop (cost=0.00..26.53 rows=10 width=4) (never executed)

  • Join Filter: (public.katello_repositories.environment_id = katello_environments.id)
45. 0.000 0.000 ↓ 0.0 0

Seq Scan on katello_environments (cost=0.00..10.40 rows=40 width=4) (never executed)

46. 0.000 0.000 ↓ 0.0 0

Materialize (cost=0.00..10.15 rows=10 width=8) (never executed)

47. 0.000 0.000 ↓ 0.0 0

Seq Scan on katello_repositories (cost=0.00..10.10 rows=10 width=8) (never executed)

48. 1.384 2.076 ↑ 1.0 1,812 4

Bitmap Heap Scan on katello_repository_errata (cost=27.18..67.83 rows=1,812 width=8) (actual time=0.180..0.519 rows=1,812 loops=4)

  • Recheck Cond: (repository_id = public.katello_repositories.id)
  • Buffers: shared hit=91
49. 0.692 0.692 ↑ 1.0 1,812 4

Bitmap Index Scan on index_katello_repository_errata_on_repository_id (cost=0.00..26.73 rows=1,812 width=0) (actual time=0.173..0.173 rows=1,812 loops=4)

  • Index Cond: (repository_id = public.katello_repositories.id)
  • Buffers: shared hit=34