[Zope] Cataloging zclass problem

Oliver Bleutgen Oliver Bleutgen <myzope@gmx.net>
Mon, 2 Jul 2001 20:27:14 +0200


Hi zopistas,

I have (had) a slight problem here concerning getting
zclasses in a catalog with zope 2.3.1 to 2.3.3.
I have a folderish (catalog-aware) zclass whose content
is in a dtml-method (named content).=20
I have added a python script  which renders my content=20
for indexing via:

return(render(context.content(context)))

I got the follwing error (pulled out of medusa_monitor
for better verbosity) on some (a third) of all=20
zclasses. The traceback I get in the ZMI is the same.


k.manage_catalogReindex(None,None,'/')
Traceback (innermost last):
  File "/home/bleutgen/bin/Zope-2.3.1-src/ZServer/medusa/monitor.py", line=
 94, in found_terminator
    result =3D eval (co, self.local_env)
  File "<secure_monitor_channel connected 127.0.0.1:2905 at 890f7e8>", lin=
e 0, in ?
  File "/home/bleutgen/bin/Zope-2.3.1-src/lib/python/Products/ZCatalog/ZCa=
talog.py", line 325, in manage_catalogReindex
    self.catalog_object(obj, p)
  File "/home/bleutgen/bin/Zope-2.3.1-src/lib/python/Products/ZCatalog/ZCa=
talog.py", line 429, in catalog_object
    self._catalog.catalogObject(obj, uid, None)
  File "/home/bleutgen/bin/Zope-2.3.1-src/lib/python/Products/ZCatalog/Cat=
alog.py", line 448, in catalogObject
    blah =3D x.index_object(index, object, threshold)
  File "/home/bleutgen/bin/Zope-2.3.1-src/lib/python/SearchIndex/UnTextInd=
ex.py", line 351, in index_object
    widScores[getWid(word)]=3Dscore
  File "/home/bleutgen/bin/Zope-2.3.1-src/lib/python/SearchIndex/GlobbingL=
exicon.py", line 163, in getWordId
    if self._lexicon.has_key(word):
  File "/home/bleutgen/bin/Zope-2.3.1-src/lib/python/ZODB/Connection.py", =
line 508, in setstate
    p, serial =3D self._storage.load(oid, self._version)
  File "/home/bleutgen/bin/Zope-2.3.1-src/lib/python/ZODB/FileStorage.py",=
 line 593, in load
    try: return self._load(oid, version, self._index, self._file)
  File "/home/bleutgen/bin/Zope-2.3.1-src/lib/python/ZODB/FileStorage.py",=
 line 569, in _load
    pos=3D_index[oid]
KeyError: f


Now I fiddled around a bit and removed and re-added some indexes/metadata,=
 and
now it seems to work (on our dev-server).
The funny thing is that just certain character-combination seem to trigger
this error. For instance I could trim the index content down to the two
characters (fi) and got the above error.

Anybody any idea?

cheers,
oliver