summaryrefslogtreecommitdiff
path: root/addons/web
diff options
context:
space:
mode:
authorXavier Morel <xmo@odoo.com>2018-08-21 15:20:04 +0200
committerxmo-odoo <xmo@odoo.com>2018-09-11 16:43:55 +0200
commit0ecc5d50fb6bc2a8a41a0653edff4e52846acc29 (patch)
tree247db07fd4f9607aeddee5c536e01d8dd1841aee /addons/web
parent7f29b31cf307e640806225440be69561f9eea0b2 (diff)
[IMP] base: cache property.get(res_id=False)
After installing a bunch more modules including account & some others, company-dependent fields turn out to be horrendously inefficient (more or less entirely unbatched): near 80% of runtime is taken by setting those fields on the partners being created, split 28%/51% between getting the default values (_default_company_dependent) and setting them (_inverse_company_dependent). clear_cache on *every* set_multi call is a bit extreme and cause test problems (test_pickings_transfer_with_different_uom_and_back_orders has a super fucky behaviour wrt caching so breaks when clearing the cache on every set_multi) so only cache the "default" case (res_id=False) and only clear when specifically setting that. This makes fetching default values essentially disappear from the profile.
Diffstat (limited to 'addons/web')
0 files changed, 0 insertions, 0 deletions