-
- Downloads
[FIX] models: avoid neverending recomputation on missing records
Assume F and G are computed by the same method on a missing record R.
During recomputation of F on R, the compute method is called but fails
because R is missing. Both fields are re-marked to compute (because
computation failed), then F is discarded (because R is missing). Then
comes G's turn: G is accessed on R and the computation fails. Both
fields are re-marked to compute (because computation failed), then G is
discarded (because R is missing). Now F is marked again to compute: the
process never ends.
To avoid this situation, discard all fields to recompute on missing
records.
closes odoo/odoo#42202
Signed-off-by:
Raphael Collet (rco) <rco@openerp.com>
Showing
- odoo/addons/test_new_api/models.py 11 additions, 1 deletionodoo/addons/test_new_api/models.py
- odoo/addons/test_new_api/tests/test_one2many.py 10 additions, 0 deletionsodoo/addons/test_new_api/tests/test_one2many.py
- odoo/fields.py 5 additions, 1 deletionodoo/fields.py
- odoo/models.py 2 additions, 1 deletionodoo/models.py
Loading
Please register or sign in to comment