diff options
| author | Raphael Collet <rco@odoo.com> | 2019-08-27 13:27:51 +0000 |
|---|---|---|
| committer | Raphael Collet <rco@odoo.com> | 2019-09-09 13:18:53 +0000 |
| commit | 263849c3365af3d62fa5b9ceaff65b2f7b84c092 (patch) | |
| tree | bfb98fc8abbd771675e5765936273f0b3d4836a3 /odoo/fields.py | |
| parent | cfb08e87b0fa8895ec4406c9b30d2ebdb790e346 (diff) | |
[FIX] models: optimize modified() in the context of record creation
This prevents a bunch of queries that are useless when creating a
record. Indeed, right after a record has been created, no other record
has a many2one reference to it. In other words, inversing a many2one
field from the record just created always gives an empty recordset.
Those useless inversions generate about a dozen queries when creating a
`res.partner`, for instance.
This saves queries, but not much time.
closes odoo/odoo#36566
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
Diffstat (limited to 'odoo/fields.py')
| -rw-r--r-- | odoo/fields.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/odoo/fields.py b/odoo/fields.py index 995a586739f..9a3b3504a2b 100644 --- a/odoo/fields.py +++ b/odoo/fields.py @@ -1072,7 +1072,7 @@ class Field(MetaField('DummyField', (object,), {})): if new_records: # new records: no business logic with records.env.protecting(records._field_computed.get(self, [self]), records): - new_records.modified([self.name], create=True) + new_records.modified([self.name]) self.write(new_records, value) if self.relational: new_records.modified([self.name]) |
