Odoo's Mergebot e8954596c7 [IMP] core: speed up registry setup
This proposes a new implementation of
* the "discovery" of fields on a given model;
* the setup of fields;
* the sharing of fields across registries.

This new implementation makes the registry loading faster.  Our benchmark is two registries with 296 modules (all community modules).  Both registries have the same models, so we can see how sharing across registries can save time and/or memory.  Here are time measurements for loading both registries (from scratch):

Time | before | after | difference
---|---|---|---
Loading Odoo modules | 1176ms | 1339ms | +14%
Loading registry 1 | 2042ms | 1067ms | -48%
Loading registry 2 | 990ms | 970ms | -2%

As we can see, there is some extra work done when loading Odoo modules, but this extra work is done once for all registries using those modules.  However, this price is largely compensated by the speedup when loading a registry.  Notice also that the net time to load a registry no longer depends whether other registries are present in the server.

Overall, the loading of the first registry goes from 3218ms to 2406ms, which is 25% faster.  In other words, the bootstrapping time of a server is smaller.

closes odoo/odoo#69924

Related: odoo/upgrade#2428
Related: odoo/enterprise#17963
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2021-05-03 17:30:22 +02:00
2015-09-08 15:45:09 +02:00
2015-09-08 17:58:38 +02:00
2019-11-08 11:24:04 +00:00
2020-09-28 14:07:25 +00:00

Build Status Tech Doc Help Nightly Builds

Odoo

Odoo is a suite of web based open source business apps.

The main Odoo Apps include an Open Source CRM, Website Builder, eCommerce, Warehouse Management, Project Management, Billing & Accounting, Point of Sale, Human Resources, Marketing, Manufacturing, ...

Odoo Apps can be used as stand-alone applications, but they also integrate seamlessly so you get a full-featured Open Source ERP when you install several Apps.

Getting started with Odoo

For a standard installation please follow the Setup instructions from the documentation.

To learn the software, we recommend the Odoo eLearning, or Scale-up, the business game. Developers can start with the developer tutorials

S
Description
No description provided
Readme LGPL-3.0
3.4 GiB
Languages
Python 49.6%
JavaScript 47.8%
SCSS 2%
CSS 0.3%
HTML 0.2%