Smile-SA / odoo_addons

Odoo addons developed by Smile

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Smile_audit: Uninstall fails

sgrotz-UT opened this issue · comments

When trying to uninstall the app, it throws an error - not being able to access the db:

Error:
Odoo Server Error

Traceback (most recent call last):
  File "/home/odoo/src/odoo/odoo/addons/base/models/ir_http.py", line 237, in _dispatch
    result = request.dispatch()
  File "/home/odoo/src/odoo/odoo/http.py", line 683, in dispatch
    result = self._call_function(**self.params)
  File "/home/odoo/src/odoo/odoo/http.py", line 359, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/home/odoo/src/odoo/odoo/service/model.py", line 94, in wrapper
    return f(dbname, *args, **kwargs)
  File "/home/odoo/src/odoo/odoo/http.py", line 347, in checked_call
    result = self.endpoint(*a, **kw)
  File "/home/odoo/src/odoo/odoo/http.py", line 912, in __call__
    return self.method(*args, **kw)
  File "/home/odoo/src/odoo/odoo/http.py", line 531, in response_wrap
    response = f(*args, **kw)
  File "/home/odoo/src/odoo/addons/web/controllers/main.py", line 1381, in call_button
    action = self._call_kw(model, method, args, kwargs)
  File "/home/odoo/src/odoo/addons/web/controllers/main.py", line 1369, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/home/odoo/src/odoo/odoo/api.py", line 396, in call_kw
    result = _call_kw_multi(method, model, args, kwargs)
  File "/home/odoo/src/odoo/odoo/api.py", line 383, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "/home/odoo/src/odoo/odoo/addons/base/wizard/base_module_uninstall.py", line 59, in action_uninstall
    return modules.button_immediate_uninstall()
  File "<decorator-gen-74>", line 2, in button_immediate_uninstall
  File "/home/odoo/src/odoo/odoo/addons/base/models/ir_module.py", line 73, in check_and_log
    return method(self, *args, **kwargs)
  File "/home/odoo/src/odoo/odoo/addons/base/models/ir_module.py", line 616, in button_immediate_uninstall
    return self._button_immediate_function(type(self).button_uninstall)
  File "/home/odoo/src/odoo/odoo/addons/base/models/ir_module.py", line 592, in _button_immediate_function
    modules.registry.Registry.new(self._cr.dbname, update_module=True)
  File "/home/odoo/src/odoo/odoo/modules/registry.py", line 89, in new
    odoo.modules.load_modules(registry._db, force_demo, status, update_module)
  File "/home/odoo/src/odoo/odoo/modules/loading.py", line 519, in load_modules
    Module.browse(modules_to_remove.values()).module_uninstall()
  File "/home/odoo/src/odoo/addons/base_import_module/models/ir_module.py", line 158, in module_uninstall
    res = super().module_uninstall()
  File "<decorator-gen-73>", line 2, in module_uninstall
  File "/home/odoo/src/odoo/odoo/addons/base/models/ir_module.py", line 73, in check_and_log
    return method(self, *args, **kwargs)
  File "/home/odoo/src/odoo/odoo/addons/base/models/ir_module.py", line 490, in module_uninstall
    self.with_context(prefetch_fields=False).write({'state': 'uninstalled', 'latest_version': False})
  File "/home/odoo/src/user/smile_audit/models/base.py", line 103, in write
    if not self._get_audit_rule('write'):
  File "/home/odoo/src/user/smile_audit/models/base.py", line 58, in _get_audit_rule
    rule_id = AuditRule._check_audit_rule(group_ids).get(
  File "<decorator-gen-112>", line 2, in _check_audit_rule
  File "/home/odoo/src/odoo/odoo/tools/cache.py", line 90, in lookup
    value = d[key] = self.method(*args, **kwargs)
  File "/home/odoo/src/user/smile_audit/models/audit_rule.py", line 79, in _check_audit_rule
    rules = self.sudo().search([
  File "/home/odoo/src/odoo/odoo/models.py", line 1700, in search
    return res if count else self.browse(res)
  File "/home/odoo/src/odoo/odoo/models.py", line 4947, in browse
    if not ids:
  File "/home/odoo/src/odoo/odoo/osv/query.py", line 156, in __bool__
    return bool(self._result)
  File "/home/odoo/src/odoo/odoo/tools/func.py", line 26, in __get__
    value = self.fget(obj)
  File "/home/odoo/src/odoo/odoo/osv/query.py", line 149, in _result
    self._cr.execute(query_str, params)
  File "<decorator-gen-3>", line 2, in execute
  File "/home/odoo/src/odoo/odoo/sql_db.py", line 101, in check
    return f(self, *args, **kwargs)
  File "/home/odoo/src/odoo/odoo/sql_db.py", line 298, in execute
    res = self._obj.execute(query, params)
Exception

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/odoo/src/odoo/odoo/http.py", line 639, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/home/odoo/src/odoo/odoo/http.py", line 315, in _handle_exception
    raise exception.with_traceback(None) from new_cause
psycopg2.errors.UndefinedTable: relation "audit_rule" does not exist
LINE 1: SELECT "audit_rule".id FROM "audit_rule" WHERE (("audit_rule...
                                    ^

Can be closed - solution was in #87