explain.depesz.com

PostgreSQL's explain analyze made readable

Result: FzvV

Settings
# exclusive inclusive rows x rows loops node
1. 0.007 4.138 ↓ 6.5 26 1

Limit (cost=328.72..328.73 rows=4 width=5,741) (actual time=4.118..4.138 rows=26 loops=1)

2. 1.221 4.131 ↓ 6.5 26 1

Sort (cost=328.72..328.73 rows=4 width=5,741) (actual time=4.116..4.131 rows=26 loops=1)

  • Sort Key: retailer_term_v2s.score DESC NULLS LAST, generic_term_v2s.score DESC NULLS LAST, ((((ts_rank(items_0.full_text_v2, '''appl'''::tsquery, 1) * '100'::double precision) + (COALESCE(products_conversions.score, '0'::double precision) * '100'::double precision)) * '1'::double precision)) DESC, items_0.item_id DESC
  • Sort Method: quicksort Memory: 193kB
3. 0.542 2.910 ↓ 6.5 26 1

WindowAgg (cost=87.05..328.68 rows=4 width=5,741) (actual time=2.642..2.910 rows=26 loops=1)

4. 0.075 2.368 ↓ 6.5 26 1

Nested Loop Left Join (cost=87.05..328.55 rows=4 width=5,620) (actual time=1.354..2.368 rows=26 loops=1)

5. 0.084 2.189 ↓ 6.5 26 1

Nested Loop Left Join (cost=86.76..295.30 rows=4 width=4,719) (actual time=1.331..2.189 rows=26 loops=1)

6. 0.076 2.027 ↓ 6.5 26 1

Nested Loop Left Join (cost=86.48..263.53 rows=4 width=4,691) (actual time=1.309..2.027 rows=26 loops=1)

7. 0.065 1.873 ↓ 6.5 26 1

Nested Loop Left Join (cost=86.19..231.77 rows=4 width=4,080) (actual time=1.290..1.873 rows=26 loops=1)

  • Join Filter: (generic_term_v2s.product_id = items_0.product_id)
8. 0.070 1.808 ↓ 6.5 26 1

Nested Loop Left Join (cost=86.04..223.53 rows=4 width=4,072) (actual time=1.272..1.808 rows=26 loops=1)

9. 0.075 1.712 ↓ 6.5 26 1

Nested Loop Left Join (cost=85.89..208.64 rows=4 width=4,064) (actual time=1.254..1.712 rows=26 loops=1)

10. 0.074 1.559 ↓ 6.5 26 1

Nested Loop (cost=85.47..174.41 rows=4 width=4,056) (actual time=1.232..1.559 rows=26 loops=1)

11. 0.042 1.303 ↓ 6.5 26 1

Nested Loop Left Join (cost=85.19..142.64 rows=4 width=1,115) (actual time=1.201..1.303 rows=26 loops=1)

  • Join Filter: ((items_availabilities.inventory_area_id = items_0.inventory_area_id) AND (items_availabilities.item_id = items_0.item_id))
  • Filter: (COALESCE(items_availabilities.availability_score, '0.87'::double precision) > '0'::double precision)
12. 0.086 1.261 ↓ 2.4 26 1

Bitmap Heap Scan on items_0 (cost=80.98..126.73 rows=11 width=1,107) (actual time=1.189..1.261 rows=26 loops=1)

  • Recheck Cond: ((full_text_v2 @@ '''appl'''::tsquery) AND (inventory_area_id = 20,636))
  • Filter: (visible AND available AND (NOT alcoholic))
  • Rows Removed by Filter: 1
  • Heap Blocks: exact=27
13. 0.014 1.175 ↓ 0.0 0 1

BitmapAnd (cost=80.98..80.98 rows=12 width=0) (actual time=1.173..1.175 rows=0 loops=1)

14. 0.231 0.231 ↑ 1.0 80 1

Bitmap Index Scan on search_index_v2_items_0 (cost=0.00..20.80 rows=80 width=0) (actual time=0.231..0.231 rows=80 loops=1)

  • Index Cond: ((full_text_v2 @@ '''appl'''::tsquery) AND (inventory_area_id = 20,636))
15. 0.930 0.930 ↓ 1.5 4,223 1

Bitmap Index Scan on items_0_available_visible_idx (cost=0.00..59.93 rows=2,764 width=0) (actual time=0.930..0.930 rows=4,223 loops=1)

  • Index Cond: ((available = true) AND (visible = true))
16. 0.000 0.000 ↓ 0.0 0 26

Materialize (cost=4.21..14.39 rows=7 width=20) (actual time=0.000..0.000 rows=0 loops=26)

17. 0.001 0.004 ↓ 0.0 0 1

Bitmap Heap Scan on items_availabilities_0 items_availabilities (cost=4.21..14.35 rows=7 width=20) (actual time=0.003..0.004 rows=0 loops=1)

  • Recheck Cond: (inventory_area_id = 20,636)
18. 0.003 0.003 ↓ 0.0 0 1

Bitmap Index Scan on items_availabilities_0_inventory_area_id_idx (cost=0.00..4.21 rows=7 width=0) (actual time=0.002..0.003 rows=0 loops=1)

  • Index Cond: (inventory_area_id = 20,636)
19. 0.182 0.182 ↑ 1.0 1 26

Index Scan using index_retailer_products_on_retailer_id_and_product_id on retailer_products (cost=0.29..7.94 rows=1 width=2,941) (actual time=0.007..0.007 rows=1 loops=26)

  • Index Cond: ((retailer_id = items_0.retailer_id) AND (product_id = items_0.product_id))
20. 0.078 0.078 ↓ 0.0 0 26

Index Scan using index_products_conversions_on_cpk on products_conversions (cost=0.42..8.44 rows=1 width=12) (actual time=0.003..0.003 rows=0 loops=26)

  • Index Cond: ((version = 3) AND (product_id = items_0.product_id) AND ((query)::text = 'apple'::text))
21. 0.026 0.026 ↓ 0.0 0 26

Index Scan using index_retailer_products_term_v2s_on_natural_key on retailer_products_term_v2s retailer_term_v2s (cost=0.15..3.45 rows=1 width=16) (actual time=0.001..0.001 rows=0 loops=26)

  • Index Cond: ((term = 'apple'::text) AND (retailer_id = items_0.retailer_id) AND (product_id = items_0.product_id))
22. 0.000 0.000 ↓ 0.0 0 26

Materialize (cost=0.15..8.18 rows=1 width=12) (actual time=0.000..0.000 rows=0 loops=26)

23. 0.002 0.002 ↓ 0.0 0 1

Index Scan using index_retailer_products_term_v2s_on_natural_key on retailer_products_term_v2s generic_term_v2s (cost=0.15..8.17 rows=1 width=12) (actual time=0.002..0.002 rows=0 loops=1)

  • Index Cond: ((term = 'apple'::text) AND (retailer_id = '-1'::integer))
24. 0.078 0.078 ↑ 1.0 1 26

Index Scan using index_deprecated_retailer_products_mls_cpk on deprecated_retailer_products_mls (cost=0.29..7.94 rows=1 width=619) (actual time=0.003..0.003 rows=1 loops=26)

  • Index Cond: ((retailer_id = items_0.retailer_id) AND (product_id = items_0.product_id))
25. 0.078 0.078 ↑ 1.0 1 26

Index Scan using index_deprecated_retailer_products_cpgs_cpk on deprecated_retailer_products_cpgs (cost=0.29..7.94 rows=1 width=36) (actual time=0.003..0.003 rows=1 loops=26)

  • Index Cond: ((retailer_id = items_0.retailer_id) AND (product_id = items_0.product_id))
26. 0.104 0.104 ↑ 1.0 1 26

Index Scan using deprecated_items_denormalized_retailer_id_product_id_invent_idx on deprecated_items_denormalizeds_0 (cost=0.29..8.31 rows=1 width=901) (actual time=0.004..0.004 rows=1 loops=26)

  • Index Cond: ((retailer_id = items_0.retailer_id) AND (product_id = items_0.product_id) AND (inventory_area_id = items_0.inventory_area_id) AND (inventory_area_id = 20,636))
Planning time : 20.741 ms