[Zope-dev] QueueCatalog bug when process all indexes imediatly is
checked
Joachim Schmitz
js at aixtraware.de
Sat Jun 16 07:07:20 EDT 2007
Hi,
this is with a svn checkout of QueueCatalog. When the process all
indexes imediatly is checked I get:
2007-06-16 12:57:44 ERROR event.QueueCatalog error cataloging object
Traceback (most recent call last):
File
"/home/perry/Zope/instances/homewaeup/Products/QueueCatalog/QueueCatalog.py",
line 425, in _process_queue
update_metadata=not immediate_metadata)
File
"/home/perry/Zope/instances/waeup/Products/CPSCore/PatchCMFCoreCatalogTool.py",
line 206, in cat_catalog_object
idxs = [i for i in idxs if self._catalog.indexes.has_key(i)]
TypeError: iteration over non-sequence
2007-06-16 12:57:45 ERROR event.QueueCatalog error cataloging object
Traceback (most recent call last):
File
"/home/perry/Zope/instances/homewaeup/Products/QueueCatalog/QueueCatalog.py",
line 425, in _process_queue
update_metadata=not immediate_metadata)
File
"/home/perry/Zope/instances/waeup/Products/CPSCore/PatchCMFCoreCatalogTool.py",
line 206, in cat_catalog_object
idxs = [i for i in idxs if self._catalog.indexes.has_key(i)]
TypeError: iteration over non-sequence
The error is caused by line 393 of QueueCatalog.py
def _process_queue(self, queue, limit):
"""Process a single queue"""
catalog = self.getZCatalog()
if self.getProcessAllIndexes():
#idxs = None this is wrong it must be
idxs = catalog.indexes()
else:
cat_indexes = sets.Set(catalog.indexes())
immediate_indexes = sets.Set(self._immediate_indexes)
if not immediate_indexes or immediate_indexes==cat_indexes:
#idxs = None # do all of 'em <<<<< also here
idxs = catalog.indexes() # do all of 'em
Even after applying these changes, the queue still fills up, when
process all indexes imediatly is checked.
We wanted to "disable the QueueCatalog for a mass-data import.
--
Gruß Joachim
More information about the Zope-Dev
mailing list