-
- Downloads
[REF] mail: reduce query count to create activities by making activity_date_deadline not stored
Activity mixin adds an activity_date_deadline field that is a related on activity_ids. This one is a o2m using a domain based on the current record model. Indeed activities are cross-model, like mail.message. However as it is stored it generates are a lot of unnecessary computation when activities are updated. Indeed when activities change the related computation is triggered for every model inheriting from the activity mixin. It then applies the domain in order to find record to update. This generates a lot of void queries because only one will match the activity model. This commit makes the field not stored anymore. Indeed it is used mainly in filters. Same functional result can be achieved using a computed and searchable field. We gain a lot of queries when creating activities as indicated by the counter update in this commit. Creating a record inheriting from activity mixin is a bit improved since there is less computed field to compute. Creating an activity costs a lot less queries and we gain about 40% in term of query required to create an activity when a lot of models are using the mixin. On community runbot it makes a gain of 2% when installing all modules. This commit allows to save 13K queries on 587K (current) which is quite good.
Loading
Please register or sign in to comment