From 2813dea3d05ab36a47f9104ebfbdc06eec4d49d6 Mon Sep 17 00:00:00 2001 From: Stanislas Sobieski <sts@odoo.com> Date: Mon, 12 Sep 2022 15:39:33 +0000 Subject: [PATCH] [FIX] purchase_stock: add index on created_purchase_line_id of stock.move EXPLAIN ANALYZE SELECT "stock_move".id FROM "stock_move" WHERE ("stock_move"."created_purchase_line_id" in (24065, 24066, 24081, 24082, 24083, 24084, 24085, 24086, 24087, 24088, 24089, 24090, 24091, 24092, 24093, 26121, 26487)) and ("stock_move"."company_id" in (1)) ORDER BY "stock_move"."sequence" ,"stock_move"."id" ; Goes from 2231.021 ms to 1ms on a database with 2.800.000 stock_move. closes odoo/odoo#105136 X-original-commit: d7ea47f487c0317023db05353d6fbcefc7febf41 Signed-off-by: Arnold Moyaux (arm) <arm@odoo.com> --- addons/purchase_stock/models/stock.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/purchase_stock/models/stock.py b/addons/purchase_stock/models/stock.py index 887afb6b99ca..7f131ba3da56 100644 --- a/addons/purchase_stock/models/stock.py +++ b/addons/purchase_stock/models/stock.py @@ -19,7 +19,7 @@ class StockMove(models.Model): purchase_line_id = fields.Many2one('purchase.order.line', 'Purchase Order Line', ondelete='set null', index=True, readonly=True) created_purchase_line_id = fields.Many2one('purchase.order.line', - 'Created Purchase Order Line', ondelete='set null', readonly=True, copy=False) + 'Created Purchase Order Line', ondelete='set null', readonly=True, copy=False, index=True) @api.model def _prepare_merge_moves_distinct_fields(self): -- GitLab