OCA / OpenUpgrade

Open source upgrade path for Odoo/OpenERP
https://oca.github.io/OpenUpgrade/
GNU Affero General Public License v3.0
709 stars 685 forks source link

[12.0][BUG] #3712

Closed marcos-mendez closed 1 year ago

marcos-mendez commented 1 year ago

The same complete clean Base but with errors generated by openupgrade. Really weird

2023-02-01 19:44:34,702 33224 ERROR marina odoo.sql_db: bad query: DELETE FROM ir_ui_view WHERE id IN (410)
ERROR: update or delete on table "ir_ui_view" violates foreign key constraint "ir_ui_view_inherit_id_fkey" on table "ir_ui_view"
DETAIL:  Key (id)=(410) is still referenced from table "ir_ui_view".

2023-02-01 19:44:34,702 33224 WARNING marina odoo.addons.base.models.ir_model: Could not delete obsolete record with id: 410 of model ir.ui.view
Please refer to the log message right above 
Traceback (most recent call last):
  File "/root/openupgrade/odoo/addons/base/models/ir_model.py", line 1755, in _process_end
    record.unlink()
  File "/root/openupgrade/addons/website/models/ir_ui_view.py", line 168, in unlink
    result = super(View, self + specific_views).unlink()
  File "/root/openupgrade/odoo/addons/base/models/ir_ui_view.py", line 465, in unlink
    return super(View, self).unlink()
  File "/root/openupgrade/odoo/models.py", line 3194, in unlink
    cr.execute(query, (sub_ids,))
  File "/root/openupgrade/odoo/sql_db.py", line 148, in wrapper
    return f(self, *args, **kwargs)
  File "/root/openupgrade/odoo/sql_db.py", line 225, in execute
    res = self._obj.execute(query, params)
psycopg2.IntegrityError: update or delete on table "ir_ui_view" violates foreign key constraint "ir_ui_view_inherit_id_fkey" on table "ir_ui_view"
DETAIL:  Key (id)=(410) is still referenced from table "ir_ui_view".
pedrobaeza commented 1 year ago

Manual views that you have created as inherited of one being removed. Remove all your manual views before migrating.

marcos-mendez commented 1 year ago

@pedrobaeza que son views manuales, perdona la ignorância, como las puedo remover? Es un odoo limpio solo una homepage, estoy haciendo pruebas antes de hacer en produccion

pedrobaeza commented 1 year ago

Views that you have made on developer mode on Odoo creating them from the "Edit view" option. Views without XML-ID.

marcos-mendez commented 1 year ago

Pues es muy raro @pedrobaeza porque deveras no hay ninguna view que fue creada asi, Es una simples pagina con Home y ContactUs

Ademas, aun que estuvieran estas paǵinas se presume que openupgrade iria a hacer el upgrade del código destas vistas no? Ya que todo que es html queda como attachment en la base de datos.

Aun asi, desactivando todas las vistas y haciendo el Upgrade a V12 (sufro solo de pensar que hay que pasar por mas 4 upgrades para llegar a v16) quedan errores como este:

Screenshot from 2023-02-01 19-33-44

image

Es bastante frustrante que para hacer un simple upgrade de un Odoo11 a un Odoo12 con solo el modulu Web Instalado existan tantas restricciones.

Si tienes alguna luz en el fin del tunel agradezco.

marcos-mendez commented 1 year ago
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/tools/cache.py", line 88, in lookup
    r = d[key]
  File "/usr/lib/python3/dist-packages/odoo/tools/func.py", line 69, in wrapper
    return func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/odoo/tools/lru.py", line 44, in __getitem__
    a = self.d[obj].me
KeyError: ('ir.qweb', <function IrQWeb.compile at 0x7efc33764400>, 'website.layout', ('pt_BR', True, None, None, False, 1))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/tools/cache.py", line 88, in lookup
    r = d[key]
  File "/usr/lib/python3/dist-packages/odoo/tools/func.py", line 69, in wrapper
    return func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/odoo/tools/lru.py", line 44, in __getitem__
    a = self.d[obj].me
KeyError: ('ir.ui.view', <function View._read_template at 0x7efc31cd2400>, frozenset({1, 3, 4, 7, 8, 12, 13, 16, 17, 18, 20}), 958, ('pt_BR', True, None, None, False, 1))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/qweb.py", line 374, in get_template
    document = options.get('load', self.load)(template, options)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_qweb.py", line 122, in load
    template = env['ir.ui.view'].read_template(name)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 1216, in read_template
    return self._read_template(self.get_view_id(xml_id))
  File "<decorator-gen-34>", line 2, in _read_template
  File "/usr/lib/python3/dist-packages/odoo/tools/cache.py", line 93, in lookup
    value = d[key] = self.method(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 1207, in _read_template
    arch = self.browse(view_id).read_combined(['arch'])['arch']
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 821, in read_combined
    arch = self.apply_view_inheritance(arch_tree, root.id, self.model)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 769, in apply_view_inheritance
    source = self.apply_inheritance_specs(source, specs_tree, view_id)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 747, in apply_inheritance_specs
    self.raise_view_error(_("Element '%s' cannot be located in parent view") % tag, inherit_id)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 568, in raise_view_error
    raise ValueError(message)
ValueError: Elemento '<xpath expr="//a[@id='o_logout']">' não pode ser localizado na vista principal

Contexto de erro:
Veja `Link to frontend portal`
[view_id: 957, xml_id: n/a, model: n/a, parent_id: 878]

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_http.py", line 208, in _dispatch
    result = request.dispatch()
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 835, in dispatch
    r = self._call_function(**self.params)
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 346, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/odoo/service/model.py", line 98, in wrapper
    return f(dbname, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 342, in checked_call
    result.flatten()
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 1270, in flatten
    self.response.append(self.render())
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 1263, in render
    return env["ir.ui.view"].render_template(self.template, self.qcontext)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 1338, in render_template
    return self.browse(self.get_view_id(template)).render(values, engine)
  File "/usr/lib/python3/dist-packages/odoo/addons/website/models/ir_ui_view.py", line 322, in render
    return super(View, self).render(values, engine=engine, minimal_qcontext=minimal_qcontext)
  File "/usr/lib/python3/dist-packages/odoo/addons/web_editor/models/ir_ui_view.py", line 29, in render
    return super(IrUiView, self).render(values=values, engine=engine, minimal_qcontext=minimal_qcontext)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 1347, in render
    return self.env[engine].render(self.id, qcontext)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_qweb.py", line 59, in render
    result = super(IrQWeb, self).render(id_or_xml_id, values=values, **context)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/qweb.py", line 275, in render
    self.compile(template, options)(self, body.append, values or {})
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/qweb.py", line 350, in _compiled_fn
    raise e
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/qweb.py", line 348, in _compiled_fn
    return compiled(self, append, new, options, log)
  File "<template>", line 1, in template_877_359
  File "<decorator-gen-55>", line 2, in compile
  File "/usr/lib/python3/dist-packages/odoo/tools/cache.py", line 93, in lookup
    value = d[key] = self.method(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_qweb.py", line 114, in compile
    return super(IrQWeb, self).compile(id_or_xml_id, options=options)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/qweb.py", line 292, in compile
    element, document = self.get_template(template, options)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/qweb.py", line 378, in get_template
    raise QWebException("load could not load template", name=template)
odoo.addons.base.models.qweb.QWebException: None
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/tools/cache.py", line 88, in lookup
    r = d[key]
  File "/usr/lib/python3/dist-packages/odoo/tools/func.py", line 69, in wrapper
    return func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/odoo/tools/lru.py", line 44, in __getitem__
    a = self.d[obj].me
KeyError: ('ir.qweb', <function IrQWeb.compile at 0x7efc33764400>, 'website.layout', ('pt_BR', True, None, None, False, 1))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/tools/cache.py", line 88, in lookup
    r = d[key]
  File "/usr/lib/python3/dist-packages/odoo/tools/func.py", line 69, in wrapper
    return func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/odoo/tools/lru.py", line 44, in __getitem__
    a = self.d[obj].me
KeyError: ('ir.ui.view', <function View._read_template at 0x7efc31cd2400>, frozenset({1, 3, 4, 7, 8, 12, 13, 16, 17, 18, 20}), 958, ('pt_BR', True, None, None, False, 1))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/qweb.py", line 374, in get_template
    document = options.get('load', self.load)(template, options)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_qweb.py", line 122, in load
    template = env['ir.ui.view'].read_template(name)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 1216, in read_template
    return self._read_template(self.get_view_id(xml_id))
  File "<decorator-gen-34>", line 2, in _read_template
  File "/usr/lib/python3/dist-packages/odoo/tools/cache.py", line 93, in lookup
    value = d[key] = self.method(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 1207, in _read_template
    arch = self.browse(view_id).read_combined(['arch'])['arch']
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 821, in read_combined
    arch = self.apply_view_inheritance(arch_tree, root.id, self.model)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 769, in apply_view_inheritance
    source = self.apply_inheritance_specs(source, specs_tree, view_id)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 747, in apply_inheritance_specs
    self.raise_view_error(_("Element '%s' cannot be located in parent view") % tag, inherit_id)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 568, in raise_view_error
    raise ValueError(message)
ValueError: Elemento '<xpath expr="//a[@id='o_logout']">' não pode ser localizado na vista principal

Contexto de erro:
Veja `Link to frontend portal`
[view_id: 957, xml_id: n/a, model: n/a, parent_id: 878]

load could not load template
Template: website.layout

PASTING THE CODE HERE