Friday, February 27, 2026
1 change · 17.0
Enhancements to existing features
This update significantly speeds up a core process within Odoo that identifies relevant bank accounts for financial reporting. By optimizing the data retrieval method, the system now completes this task in milliseconds instead of seconds, leading to faster reporting and a smoother user experience. This change focuses on internal performance improvements.
Original PR description
Before this commit, retrieving the `account_ids` from the properties in the method `_get_default_amls_matching_domain` involved searching for all the properties and calling the method `get_by_record` on each record. The `accounts` were fetched only to get the ids to add them to the `blaclisted_stock_account_ids`. Since, the domain had the condition `value_reference != False`, and the field holds the model name and the id of the record, we can directly fetch the `ids` by doing a read_group to eliminate possible duplicates and add the ids to a set of `account_ids`. This will eliminate a search to every record of the `properties` fetched which will improve the performance significantly. The benchmark done below was on a database that fetched **15630** properties and it was only tied to **two** accounts. | Scenario | Time (seconds) | |-----------|----------------| | **Before** | **7s** | | **After** | **27ms** | opw-5868236