explain.depesz.com

PostgreSQL's explain analyze made readable

Result: MHIy

Settings
# exclusive inclusive rows x rows loops node
1. 37.865 33,859.138 ↓ 46,623.0 46,623 1

Nested Loop (cost=26,646.76..26,823.54 rows=1 width=124) (actual time=0.073..33,859.138 rows=46,623 loops=1)

2.          

CTE GrowingLinks

3. 333.277 33,067.202 ↓ 2,453.8 46,623 1

Recursive Union (cost=4.78..26,645.92 rows=19 width=102) (actual time=0.033..33,067.202 rows=46,623 loops=1)

4. 0.012 0.035 ↑ 2.2 4 1

Bitmap Heap Scan on "CustomerSupplierLink" (cost=4.78..184.78 rows=9 width=95) (actual time=0.030..0.035 rows=4 loops=1)

  • Recheck Cond: ('554a8c469b72473f5ef49b2f'::text = (buyer)::text)
  • Filter: (33 = customer)
  • Rows Removed by Filter: 1
  • Heap Blocks: exact=2
5. 0.023 0.023 ↑ 9.6 5 1

Bitmap Index Scan on "CustomerSupplerBuyer_index" (cost=0.00..4.78 rows=48 width=0) (actual time=0.023..0.023 rows=5 loops=1)

  • Index Cond: ('554a8c469b72473f5ef49b2f'::text = (buyer)::text)
6. 214.834 32,733.890 ↓ 89,934.0 89,934 5

Nested Loop (cost=80.19..2,646.08 rows=1 width=102) (actual time=4,105.231..6,546.778 rows=89,934 loops=5)

7. 22.825 22.825 ↓ 310.8 9,325 5

WorkTable Scan on "GrowingLinks" gcsl_1 (cost=0.00..2.02 rows=30 width=84) (actual time=0.008..4.565 rows=9,325 loops=5)

  • Filter: (limiter > 0)
8. 792.591 32,496.231 ↓ 10.0 10 46,623

Bitmap Heap Scan on "CustomerSupplierLink" csl (cost=80.19..88.12 rows=1 width=62) (actual time=0.692..0.697 rows=10 loops=46,623)

  • Recheck Cond: (((buyer)::text = (gcsl_1.seller)::text) AND (customer = gcsl_1.customer))
  • Filter: (((seller)::text <> (gcsl_1.root)::text) AND ((gcsl_1.tier + 1) = tier))
  • Rows Removed by Filter: 55
  • Heap Blocks: exact=183,030
9. 96.654 31,703.640 ↓ 0.0 0 46,623

BitmapAnd (cost=80.19..80.19 rows=2 width=0) (actual time=0.680..0.680 rows=0 loops=46,623)

10. 1,491.936 1,491.936 ↓ 3.8 444 46,623

Bitmap Index Scan on "CustomerSupplerBuyer_index" (cost=0.00..9.30 rows=118 width=0) (actual time=0.032..0.032 rows=444 loops=46,623)

  • Index Cond: ((buyer)::text = (gcsl_1.seller)::text)
11. 30,115.050 30,115.050 ↓ 10.9 46,624 15,225

Bitmap Index Scan on customer_idx (cost=0.00..70.63 rows=4,295 width=0) (actual time=1.978..1.978 rows=46,624 loops=15,225)

  • Index Cond: (customer = gcsl_1.customer)
12. 51.939 33,494.912 ↓ 23,311.5 46,623 1

Nested Loop (cost=0.42..160.74 rows=2 width=124) (actual time=0.055..33,494.912 rows=46,623 loops=1)

13. 33,116.612 33,116.612 ↓ 2,453.8 46,623 1

CTE Scan on "GrowingLinks" gcsl (cost=0.00..0.38 rows=19 width=108) (actual time=0.035..33,116.612 rows=46,623 loops=1)

14. 326.361 326.361 ↑ 1.0 1 46,623

Index Scan using "CustomerSupplierPK" on "CustomerSupplier" csseller (cost=0.42..8.44 rows=1 width=41) (actual time=0.007..0.007 rows=1 loops=46,623)

  • Index Cond: ((customer = gcsl.customer) AND ((supplier)::text = (gcsl.seller)::text))
15. 326.361 326.361 ↑ 1.0 1 46,623

Index Scan using "CustomerSupplierPK" on "CustomerSupplier" csbuyer (cost=0.42..8.44 rows=1 width=41) (actual time=0.007..0.007 rows=1 loops=46,623)

  • Index Cond: ((customer = gcsl.customer) AND ((supplier)::text = (gcsl.buyer)::text))
Planning time : 1.340 ms
Execution time : 33,872.296 ms