09908b736fd9e7ffac08783f9771e7a8ac071d4f
Execute the tests from ea574fe9ff644 and 9e9ac5ced80b30,
which are in a SavepointCase.
The second test fails on a cache_miss.
Whats happens is the following:
- the second test starts with the environment from the beginning of the
first test. However its envs has a reference to environments that
were created during the first test.
- when computing the field, the ORM finds the value in a zombie
environment, so does not recompute it
- when trying to get the value, the value is not in cache
The issue is that going through res.config.settings's execute resets the
envs.
One solution is to put:
self.addCleanup(lambda: setattr(self.env.envs, 'envs', envs))
in SavepointCase's setup.
However in that case the reset is not needed at all:
it's necessary only if there were some modules to install.
Unfortunately to_install and to_uninstall are not symmetric:
to_uninstall contains only modules that should be uninstalled, whereas
to_install contains everything, and only filters later what actions
really need to be performed.
In this case, we can rely on the result of the installation process.
closes odoo/odoo#41126
Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
…
…
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
Languages
Python
49.6%
JavaScript
47.8%
SCSS
2%
CSS
0.3%
HTML
0.2%