From 9828e3b77e1289da5cd14cae9b98a513c0316b71 Mon Sep 17 00:00:00 2001 From: Raimon Esteve Date: Thu, 31 Aug 2023 16:19:27 +0200 Subject: [PATCH] Remove babi_execution_ in get_access in case model is not current available #161937 --- babi_multiprocess.diff | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/babi_multiprocess.diff b/babi_multiprocess.diff index 3ad49dd..d72377f 100644 --- a/babi_multiprocess.diff +++ b/babi_multiprocess.diff @@ -40,3 +40,24 @@ index d762a27a..5ca47c34 100644 related_records = Model.browse([x[0] for x in cursor]) else: with inactive_records(): +diff --git a/tryton/trytond/trytond/ir/model.py b/tryton/trytond/trytond/ir/model.py +index 6304018f24..1ea08d8be5 100644 +--- a/tryton/trytond/trytond/ir/model.py ++++ b/tryton/trytond/trytond/ir/model.py +@@ -555,8 +555,14 @@ class ModelAccess(DeactivableMixin, ModelSQL, ModelView): + fill_models(field.get_target(), models) + model2models = defaultdict(list) + for model in models: +- fill_models(pool.get(model), model2models[model]) +- ++ try: ++ fill_models(pool.get(model), model2models[model]) ++ except KeyError as err: ++ if 'babi_execution_' in str(err): ++ models.remove(model) ++ continue ++ else: ++ raise + all_models = list(set(sum(model2models.values(), []))) + default = {'read': True, 'write': True, 'create': True, 'delete': True} + default_singleton = {