After having performed successfully a DB upgrade (v13 to v16) using upgrade.odoo.com and imported it on my staging branch in odoo.sh.
When i connect to this odoo16-Staging-branch (neutralized DB) and try to re-install my custom module (extending website_event) in the Apps, i got this error: AssertionError: Field event.event.state without selection
RPC_ERROR Odoo Server Error Traceback (most recent call last): File "/home/odoo/src/odoo/odoo/http.py", line 1583, in _serve_db return service_model.retrying(self._serve_ir_http, self.env) File "/home/odoo/src/odoo/odoo/service/model.py", line 134, in retrying result = func() File "/home/odoo/src/odoo/odoo/http.py", line 1610, in _serve_ir_http response = self.dispatcher.dispatch(rule.endpoint, args) File "/home/odoo/src/odoo/odoo/http.py", line 1807, in dispatch result = self.request.registry['ir.http']._dispatch(endpoint) File "/home/odoo/src/odoo/addons/website/models/ir_http.py", line 235, 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 696, in route_wrapper result = endpoint(self, *args, **params_ok) File "/home/odoo/src/odoo/addons/web/controllers/dataset.py", line 46, in call_button action = 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 461, in call_kw result = _call_kw_multi(method, model, args, kwargs) File "/home/odoo/src/odoo/odoo/api.py", line 448, in _call_kw_multi result = method(recs, *args, **kwargs) File "", line 2, in button_immediate_install File "/home/odoo/src/odoo/odoo/addons/base/models/ir_module.py", line 76, in check_and_log return method(self, *args, **kwargs) File "/home/odoo/src/odoo/odoo/addons/base/models/ir_module.py", line 491, in button_immediate_install return self._button_immediate_function(type(self).button_install) File "/home/odoo/src/odoo/odoo/addons/base/models/ir_module.py", line 615, in _button_immediate_function registry = modules.registry.Registry.new(self._cr.dbname, update_module=True) File "", line 2, in new File "/home/odoo/src/odoo/odoo/tools/func.py", line 87, in locked return func(inst, *args, **kwargs) File "/home/odoo/src/odoo/odoo/modules/registry.py", line 90, in new odoo.modules.load_modules(registry, force_demo, status, update_module) File "/home/odoo/src/odoo/odoo/modules/loading.py", line 487, in load_modules processed_modules += load_marked_modules(cr, graph, File "/home/odoo/src/odoo/odoo/modules/loading.py", line 371, in load_marked_modules loaded, processed = load_module_graph( File "/home/odoo/src/odoo/odoo/modules/loading.py", line 206, in load_module_graph registry.setup_models(cr) File "/home/odoo/src/odoo/odoo/modules/registry.py", line 297, in setup_models model._setup_fields() File "/home/odoo/src/odoo/odoo/models.py", line 2803, in _setup_fields field.setup(self) File "/home/odoo/src/odoo/odoo/fields.py", line 538, in setup self.setup_nonrelated(model) File "/home/odoo/src/odoo/odoo/fields.py", line 2543, in setup_nonrelated assert self.selection is not None, "Field %s without selection" % self AssertionError: Field event.event.state without selection The above server error caused the following client error: RPC_ERROR: Odoo Server Error RPCError@https://samadeva-oerp-brstaging-8109207.dev.odoo.com/web/assets/83758-b7a4b7b/web.assets_backend.min.js:973:274 makeErrorFromResponse@https://samadeva-oerp-brstaging-8109207.dev.odoo.com/web/assets/83758-b7a4b7b/web.assets_backend.min.js:977:163 jsonrpc/promiseI have noticed that the original module event.event has some change (https://github.com/OCA/OpenUpgrade/blob/14.0/openupgrade_scripts/scripts/event/14.0.1.3/post-migration.py) concerning the SelectionFields event.event.state which has been turned into a Many2One-Field: event.event.stage_id
def map_event_event_states_to_stages(env): def _map_state_to_stage(state, stage_xmlid): query = """ UPDATE event_event event SET stage_id = imd.res_id FROM ir_model_data imd WHERE imd.module = 'event' AND imd.name = %s AND event.state = %s""" openupgrade.logged_query(env.cr, query, (stage_xmlid, state)) _map_state_to_stage("draft", "event_stage_new") _map_state_to_stage("done", "event_stage_done") _map_state_to_stage("cancel", "event_stage_cancelled") _map_state_to_stage("confirm", "event_stage_announced")but, i dont manage to fix this error, even after having re-installed the old fieldSelection using another new custom module:
class EventEvent(models.Model): _inherit = 'event.event' # TRY to fix error on install webtkev on v16: /odoo/fields.py", line 2543, in setup_nonrelated: AssertionError: Field event.event.state without selection state = fields.Selection([ ('draft', 'Unconfirmed'), ('cancel', 'Cancelled'), ('confirm', 'Confirmed'), ('done', 'Done')], string='Status', default='draft', readonly=True, required=True, copy=False)Any idea how to fix it ?
Hi, how long did it take to upgrade from version 13 to version 16?
Thanks!