Friday, April 24, 2026
1 change · saas-18.4
Enhancements to existing features
Pricelist validation has been optimized to avoid slowdowns and timeouts when companies manage large pricing datasets. This improves reliability and reduces processing load without changing how users set up or use pricelists.
Original PR description
The _check_pricelist_recursion constraint could cause performance issues when iterating over full recordsets or repeatedly querying large datasets.
Refactor the recursion logic to traverse pricelists as a graph (DFS on pricelist pairs) and replace item-level iteration with a targeted _read_group query to fetch only relevant pricelist-based rules:
- pricelist_id
- base = 'pricelist'
Avoid redundant path evaluations by tracking visited pricelist pairs.
This ensures that only necessary records are fetched and processed, significantly reducing memory usage and avoiding timeout issues on large datasets.
opw-6099182