zopefoundation/Products.ZCatalog

ZCTextIndex uses binary data for `WID`

Opened this issue · 2 comments

I updated my Zope app from Python 2 to Python 3 and all my ZCTextIndexes from ZCatalog are now broken.

TypeError: argument should be integer or bytes-like object, not 'str'

@d-maurer analyzed the problem:

But, the ZCTextIndex uses actually binary data (for the "WID" (= "WordInDEX") encoded document content) and there the heuristics breaks (apparently, no one has already told zodbupdate about this exception).

Initially reported here:
https://community.plone.org/t/typeerror-in-zctextindex-after-upgrade-to-py3/12621

I am not sure whether I should have created a mapping or this should have been detected by zodbupdate itself, as Products.ZCatalog is pretty much Zope standard.

This should probably be fixed in Products.ZCatalog. Moving the issue over there.

Might be a duplicate of #83.