Flectra server error
Summary
Unable to update apps after an update
Steps to reproduce
Coming from Flectra 1.0.1, download the last commit (from 83b3dd67 to 58e83ab1). Then try to update the different apps installed via UI.
What is the current bug behavior?
Some modules seems to make the update but they do not appear as update (version stays 1.0.1), some others returns an error, like website module for example:
`Erreur: Flectra Server Error
Traceback (most recent call last):
File "/opt/flectra/flectra/flectra/models.py", line 967, in _validate_fields
if isinstance(res_msg, tuple):
File "/opt/flectra/flectra/flectra/addons/base/ir/ir_ui_view.py", line 338, in _check_xml
if view_docs[0].tag == 'data':
File "/opt/flectra/flectra/flectra/addons/base/ir/ir_ui_view.py", line 1011, in postprocess_and_fields
editable = self.env.context.get('view_is_editable', True)
File "/opt/flectra/flectra/flectra/addons/base/ir/ir_ui_view.py", line 506, in raise_view_error
""" Locate a node in a source (parent) architecture.
ValueError: Le champ partner_tag_ids
n'existe pas
Contexte de l'erreur :
Vue product.public.category.form
[view_id: 771, xml_id: website_sale.product_public_category_form_view, model: product.public.category, parent_id: n/a]
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/flectra/flectra/flectra/tools/convert.py", line 741, in parse
self._tagsrec.tag
File "/opt/flectra/flectra/flectra/tools/convert.py", line 651, in _tag_record
id = self.env(context=rec_context)['ir.model.data']._update(rec_model, self.module, res, rec_id or False, not self.isnoupdate(data_node), noupdate=self.isnoupdate(data_node), mode=self.mode)
File "/opt/flectra/flectra/addons/website/models/ir_model.py", line 67, in _update
record.write(values)
File "/opt/flectra/flectra/flectra/addons/base/ir/ir_ui_view.py", line 417, in write
def toggle(self):
File "/opt/flectra/flectra/flectra/models.py", line 3016, in write
File "/opt/flectra/flectra/flectra/fields.py", line 1081, in determine_inverse
############################################################################
File "/opt/flectra/flectra/flectra/addons/base/ir/ir_ui_view.py", line 269, in _inverse_arch
def _compute_arch_base(self):
File "/opt/flectra/flectra/flectra/addons/base/ir/ir_ui_view.py", line 417, in write
def toggle(self):
File "/opt/flectra/flectra/flectra/models.py", line 3008, in write
field = self._fields.get(key)
File "/opt/flectra/flectra/flectra/models.py", line 3161, in _write
field = self._fields[name]
File "/opt/flectra/flectra/flectra/models.py", line 971, in _validate_fields
res_msg = trans._get_source(self._name, 'constraint', self.env.lang, msg)
flectra.exceptions.ValidationError: ("Erreur lors de la validation de la contrainte\n\nLe champ partner_tag_ids
n'existe pas\n\nContexte de l'erreur :\nVue product.public.category.form
\n[view_id: 771, xml_id: website_sale.product_public_category_form_view, model: product.public.category, parent_id: n/a]", None)
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "/opt/flectra/flectra/flectra/http.py", line 646, in _handle_exception try: File "/opt/flectra/flectra/flectra/http.py", line 307, in _handle_exception raise pycompat.reraise(type(exception), exception, sys.exc_info()[2]) File "/opt/flectra/flectra/flectra/tools/pycompat.py", line 87, in reraise raise value File "/opt/flectra/flectra/flectra/http.py", line 683, in dispatch if psutil: File "/opt/flectra/flectra/flectra/http.py", line 339, in _call_function return checked_call(self.db, *args, **kwargs) File "/opt/flectra/flectra/flectra/service/model.py", line 97, in wrapper return f(dbname, *args, **kwargs) File "/opt/flectra/flectra/flectra/http.py", line 332, in checked_call result = self.endpoint(*a, **kw) File "/opt/flectra/flectra/flectra/http.py", line 927, in call @Property File "/opt/flectra/flectra/flectra/http.py", line 512, in response_wrap response = f(*args, **kw) File "/opt/flectra/flectra/addons/web/controllers/main.py", line 980, in call_button action = self._call_kw(model, method, args, {}) File "/opt/flectra/flectra/addons/web/controllers/main.py", line 968, in _call_kw return call_kw(request.env[model], method, args, kwargs) File "/opt/flectra/flectra/flectra/api.py", line 689, in call_kw return call_kw_multi(method, model, args, kwargs) File "/opt/flectra/flectra/flectra/api.py", line 680, in call_kw_multi result = method(recs, *args, **kwargs) File "", line 2, in button_immediate_upgrade File "/opt/flectra/flectra/flectra/addons/base/module/module.py", line 71, in check_and_log return method(self, *args, **kwargs) File "/opt/flectra/flectra/flectra/addons/base/module/module.py", line 602, in button_immediate_upgrade return self._button_immediate_function(type(self).button_upgrade) File "/opt/flectra/flectra/flectra/addons/base/module/module.py", line 541, in _button_immediate_function modules.registry.Registry.new(self._cr.dbname, update_module=True) File "/opt/flectra/flectra/flectra/modules/registry.py", line 85, in new flectra.modules.load_modules(registry._db, force_demo, status, update_module) File "/opt/flectra/flectra/flectra/modules/loading.py", line 339, in load_modules force, status, report, loaded_modules, update_module) File "/opt/flectra/flectra/flectra/modules/loading.py", line 242, in load_marked_modules loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks) File "/opt/flectra/flectra/flectra/modules/loading.py", line 156, in load_module_graph _load_data(cr, module_name, idref, mode, kind='data') File "/opt/flectra/flectra/flectra/modules/loading.py", line 94, in _load_data tools.convert_file(cr, module_name, filename, idref, mode, noupdate, kind, report) File "/opt/flectra/flectra/flectra/tools/convert.py", line 788, in convert_file convert_xml_import(cr, module, fp, idref, mode, noupdate, report) File "/opt/flectra/flectra/flectra/tools/convert.py", line 849, in convert_xml_import obj.parse(doc.getroot(), mode=mode) File "/opt/flectra/flectra/flectra/tools/convert.py", line 748, in parse exc_info[2] File "/opt/flectra/flectra/flectra/tools/pycompat.py", line 86, in reraise raise value.with_traceback(tb) File "/opt/flectra/flectra/flectra/tools/convert.py", line 741, in parse self._tagsrec.tag File "/opt/flectra/flectra/flectra/tools/convert.py", line 651, in _tag_record id = self.env(context=rec_context)['ir.model.data']._update(rec_model, self.module, res, rec_id or False, not self.isnoupdate(data_node), noupdate=self.isnoupdate(data_node), mode=self.mode) File "/opt/flectra/flectra/addons/website/models/ir_model.py", line 67, in _update record.write(values) File "/opt/flectra/flectra/flectra/addons/base/ir/ir_ui_view.py", line 417, in write def toggle(self): File "/opt/flectra/flectra/flectra/models.py", line 3016, in write File "/opt/flectra/flectra/flectra/fields.py", line 1081, in determine_inverse ############################################################################ File "/opt/flectra/flectra/flectra/addons/base/ir/ir_ui_view.py", line 269, in _inverse_arch def _compute_arch_base(self): File "/opt/flectra/flectra/flectra/addons/base/ir/ir_ui_view.py", line 417, in write def toggle(self): File "/opt/flectra/flectra/flectra/models.py", line 3008, in write field = self._fields.get(key) File "/opt/flectra/flectra/flectra/models.py", line 3161, in _write field = self._fields[name] File "/opt/flectra/flectra/flectra/models.py", line 971, in _validate_fields res_msg = trans._get_source(self._name, 'constraint', self.env.lang, msg) flectra.tools.convert.ParseError: "Erreur lors de la validation de la contrainte
Le champ partner_tag_ids
n'existe pas
Contexte de l'erreur :
Vue product.public.category.form
[view_id: 771, xml_id: website_sale.product_public_category_form_view, model: product.public.category, parent_id: n/a]
None" while parsing /opt/flectra/flectra/addons/website_sale/views/product_views.xml:147, near
product.public.category.form
product.public.category
What is the expected correct behavior?
Update should run smoothly