Thursday, February 1, 2024
1 change · 17.0
Enhancements to existing features
This update significantly speeds up the confirmation process for large purchase orders in manufacturing operations. Previously, confirming orders with over 50 lines would take several minutes or timeout; now the same orders complete in seconds. The improvement optimizes how the system processes order data, making it practical for users to work with large orders containing hundreds of line items.
Original PR description
### Current behavior: Confirming a Purchase Order with more than 50 lines takes too much time to be processed. In the case of the client, they had PO with more than 200 lines which makes it impossible for them to confirm them. ### Step to reproduce: - Install mrp and mrp_subcontracting - Create PO with more than 50 order lines or more - Try to confirm it - Take a long time or timeout ### Benchmark (made in 16): | No. of PO lines | Before | After | |-----------------|:-------:|:------:| | 9 | 1s30 | 1s30 | | 91 | 1min | 16s | | 273 | 4min | 50s | | 405 | 4min30s | 1min6s | ### Fix: Batch more actions and records to reduce the number of queries generated by the ORM. opw-3625892 Forward-Port-Of: odoo/odoo#149383 Forward-Port-Of: odoo/odoo#146442