From f3534e8f61a3e321f7cb00a8942166b271e94e46 Mon Sep 17 00:00:00 2001 From: Kazuhiko SHIOZAKI <kazuhiko@nexedi.com> Date: Mon, 20 Jan 2025 16:54:33 +0100 Subject: [PATCH] fixup! fixup! erp5_full_text_mroonga_catalog: defer fulltext index and unindex using... no need to wrap object list in case of deferred index, otherwise another security_uid can be issued. --- product/ERP5Catalog/CatalogTool.py | 5 ++++- product/ZSQLCatalog/ZSQLCatalog.py | 7 ++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/product/ERP5Catalog/CatalogTool.py b/product/ERP5Catalog/CatalogTool.py index 9ef57fd97ac..f5fba5ded9c 100644 --- a/product/ERP5Catalog/CatalogTool.py +++ b/product/ERP5Catalog/CatalogTool.py @@ -889,10 +889,13 @@ class CatalogTool (UniqueObject, ZCatalog, CMFCoreCatalogTool, ActiveObject): """ return ZCatalog.countResults(self, REQUEST, **kw) - def wrapObjectList(self, object_value_list, catalog_value): + def wrapObjectList(self, object_value_list, catalog_value, deferred=False): """ Return a list of wrapped objects for reindexing. """ + if deferred: + # No need to wrap + return object_value_list portal = self.getPortalObject() user_set = set() diff --git a/product/ZSQLCatalog/ZSQLCatalog.py b/product/ZSQLCatalog/ZSQLCatalog.py index 59897411b40..043f17f7f3d 100644 --- a/product/ZSQLCatalog/ZSQLCatalog.py +++ b/product/ZSQLCatalog/ZSQLCatalog.py @@ -671,7 +671,7 @@ class ZCatalog(Folder, Persistent, Implicit): return [] security.declarePrivate('wrapObjectList') - def wrapObjectList(self, object_value_list, catalog_value): + def wrapObjectList(self, object_value_list, catalog_value, deferred=False): """ Return a list of wrapped objects for reindexing. @@ -690,6 +690,7 @@ class ZCatalog(Folder, Persistent, Implicit): """Catalog a list of objects. """ catalog = self.getSQLCatalog(sql_catalog_id) + deferred = kw.get('deferred', False) hot_reindexing = (self.hot_reindexing_state is not None) and \ (catalog is not None) and \ (self.source_sql_catalog_id == catalog.id) @@ -791,6 +792,7 @@ class ZCatalog(Folder, Persistent, Implicit): self.wrapObjectList( object_value_list=d['obj'], catalog_value=destination_catalog, + deferred=deferred, ), **kw ) @@ -801,6 +803,7 @@ class ZCatalog(Folder, Persistent, Implicit): self.wrapObjectList( object_value_list=d['obj'], catalog_value=archive_catalog, + deferred=deferred, ), **kw ) @@ -815,6 +818,7 @@ class ZCatalog(Folder, Persistent, Implicit): self.wrapObjectList( object_value_list=current_catalog_object_list, catalog_value=catalog, + deferred=deferred, ), **kw ) @@ -828,6 +832,7 @@ class ZCatalog(Folder, Persistent, Implicit): self.wrapObjectList( object_value_list=object_set, catalog_value=destination_catalog, + deferred=deferred, ), **kw ) -- 2.30.9