82ef2f1b8e164362417a842dd9c28145fef6e544
Observed via google sync, for some events being moved around during sync the stop_datetime ends up being before the start_datetime failing the sync. Not (explicitly) reading the computed fields from the old record properly recomputes them during copy. Underlying issue linked to (stored) computed fields when multiple fields are computed by the same method *and* the creation provides a subset of these fields explicitly: depending on the order in which *recompute* iterates the fields, it's possible that some of the fields provided explicitly get extracted (from the cache) before fields not-provided trigger a recomputation (and overwrite) of computed fields. In this case `recompute` iterates [start_datetime, start_date, stop_date, stop_datetime], if `start_datetime` and `stop_datetime` are provided explicitly to create, first recompute will check for `start_datetime`, find it in the cache and extract it, then it checks for `start_date`, does not find it in the cache, calls `_compute_dates` which writes all four fields, then it extracts the recomputed `start_datetime`, creating an incoherence: `start_datetime` is the one from the old event while `stop_datetime` is the one from the update/computation. This may lead to invisible corruption if the event is moved forwards (e.g. creates a multi-day event) and triggers a validation error if the event is moved backwards (stop_datetime is now before start_datetime). ping @rco-odoo multi-field computes may need some special handling with respect to invalidations & sequencing & the like (e.g. check their caching as a unit or something). OPW-771886
…
…
…
…
…
…
…
…
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, Purchase Management, ...
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.
If you are a developer you may type the following command at your terminal:
wget -O- https://raw.githubusercontent.com/odoo/odoo/10.0/setup/setup_dev.py | python
Then follow the developer tutorials
For Odoo employees
To add the odoo-dev remote use this command:
$ ./setup/setup_dev.py setup_git_dev
To fetch odoo merge pull requests refs use this command:
$ ./setup/setup_dev.py setup_git_review
Languages
Python
49.6%
JavaScript
47.8%
SCSS
2%
CSS
0.3%
HTML
0.2%