We recently updated our Odoo Enterprise (16.0+e, Odoo.sh) to version 16.0.20241118, and we’ve noticed a problem that wasn’t present in the previous version (16.0.20241111).
Issue Details:
When logged in as any user other than the admin, selecting a sales order and clicking on the invoice from the smart button results in an error.
Sales and accounts users cannot access the created invoice, whereas this functionality worked perfectly in the prior version.
I have reverted to the previous week's version (16.0.20241111), and it’s working fine in the staging environment. The issue seems to have arisen after the current week’s version update (16.0.20241118) in Odoo.sh. It appears the problem is related to the new release.
What would you suggest as the next step?
Error Message
If you’ve experienced this or have insights into a solution, I’d greatly appreciate your input! 🛠️
2024-11-18 08:45:21,875 50 ERROR abcd -abcd-main-7008911 odoo.http: Exception during request handling.
Traceback (most recent call last):
File "/home/odoo/src/odoo/odoo/api.py", line 997, in get
cache_value = field_cache[record._ids[0]]
KeyError: 2
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/odoo/src/odoo/odoo/fields.py", line 1161, in __get__
value = env.cache.get(record, self)
File "/home/odoo/src/odoo/odoo/api.py", line 1004, in get
raise CacheMiss(record, field)
odoo.exceptions.CacheMiss: 'res.partner.bank(2,).display_name'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/odoo/src/odoo/odoo/http.py", line 2064, in __call__
response = request._serve_db()
File "/home/odoo/src/odoo/odoo/http.py", line 1652, in _serve_db
return service_model.retrying(self._serve_ir_http, self.env)
File "/home/odoo/src/odoo/odoo/service/model.py", line 133, in retrying
result = func()
File "/home/odoo/src/odoo/odoo/http.py", line 1679, in _serve_ir_http
response = self.dispatcher.dispatch(rule.endpoint, args)
File "/home/odoo/src/odoo/odoo/http.py", line 1883, in dispatch
result = self.request.registry['ir.http']._dispatch(endpoint)
File "/home/odoo/src/odoo/addons/website/models/ir_http.py", line 237, in _dispatch
response = super()._dispatch(endpoint)
File "/home/odoo/src/odoo/odoo/addons/base/models/ir_http.py", line 154, in _dispatch
result = endpoint(**request.params)
File "/home/odoo/src/odoo/odoo/http.py", line 734, in route_wrapper
result = endpoint(self, *args, **params_ok)
File "/home/odoo/src/odoo/addons/web/controllers/dataset.py", line 42, in call_kw
return self._call_kw(model, method, args, kwargs)
File "/home/odoo/src/odoo/addons/web/controllers/dataset.py", line 33, in _call_kw
return call_kw(request.env[model], method, args, kwargs)
File "/home/odoo/src/odoo/odoo/api.py", line 468, in call_kw
result = _call_kw_multi(method, model, args, kwargs)
File "/home/odoo/src/odoo/odoo/api.py", line 453, in _call_kw_multi
result = method(recs, *args, **kwargs)
File "/home/odoo/src/odoo/odoo/models.py", line 3003, in read
return self._read_format(fnames=fields, load=load)
File "/home/odoo/src/odoo/odoo/models.py", line 3184, in _read_format
vals[name] = convert(record[name], record, use_name_get)
File "/home/odoo/src/odoo/odoo/fields.py", line 3009, in convert_to_read
return (value.id, value.sudo().display_name)
File "/home/odoo/src/odoo/odoo/fields.py", line 1219, in __get__
raise ValueError(f"Compute method failed to assign {missing_recs}.{self.name}")
ValueError: Compute method failed to assign res.partner.bank(2,).display_name
Hi Asharaf-
You won't want to hear this, but I'm glad to hear that you're having this problem, because this is *the exact* problem that we're having, and it started two days ago, just like you experienced.
We're also on v16 (but I don't know the exact Vnumber) on odoo.sh
I wish that I had an answer for you to resolve it, but I don't. I'll follow this thread though, in the hopes that one of us can help the other.