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...
^