diff options
| author | Damien Bouvy <dbo@odoo.com> | 2017-06-02 17:19:24 +0200 |
|---|---|---|
| committer | Damien Bouvy <dbo@odoo.com> | 2017-06-06 10:03:34 +0200 |
| commit | 18910e926f729b00b686f1e4ada8dd433d15d2fb (patch) | |
| tree | f6a844d16a16d29b6d37fc6f299233cf2933a327 /addons/web/static/tests/fields/basic_fields_tests.js | |
| parent | 40f8a92d881e4f83dbabb2c9ec665cd46f1dc841 (diff) | |
[FIX] website_portal_sale: let errors bubble when confirming a quote
This try except block was added in another era, where the piece of code
in the block was far less ambitious (and not for good reason since
adding a try except block because of a malformed mail template seems
overkill).
Even worse, this block actually prevented errors from bubbling, which
could have adverse effects.
Example: a long transaction confirmation (several seconds since it
implies S2S communication, invoice creating/validation, etc.) is
rollbacked because a mail message is recorded on the quote during
the processing time. The quote confirmation then crashes because of a
concurrent update error in postgres. This try except block does not
re-raise the error, which means that instead of retrying the operation
like the ORM would normally do, we have an incomplete traceback in the
system (since the error message crashes itself) and the transaction is
not validated (as far fetched as it may seem, this is in fact how this
bug was discovered).
This try-except block offers no gain in error logging (on the contrary,
since we have lost the initial error-causing statement) and prevent the
orm from correctly managing errors.
This commit removes it and let the orm handle the errors like a grown up
man; either crash for real (because it should crash to know if there's a
problem) or retry the transaction if it's a serialization issue.
opw-744629
Diffstat (limited to 'addons/web/static/tests/fields/basic_fields_tests.js')
0 files changed, 0 insertions, 0 deletions
