[Zope-dev] Zope2 / Zope3 catalog index fork / divergence
Jim Fulton
jim at zope.com
Wed Jun 10 12:38:54 EDT 2009
+1
Thanks.
Jim
On Jun 10, 2009, at 12:10 PM, Tres Seaver wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Christian Theune wrote:
>> On Tue, 2009-06-09 at 20:07 -0400, Tres Seaver wrote:
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA1
>>>
>>> Chris McDonough wrote:
>>>> Log message for revision 100775:
>>>> - Port okascore.c optimization used in okapiiindex from Zope2
>>>> catalog
>>>> implementation. This module is compiled conditionally, based on
>>>> whether your environment has a working C compiler.
>>>>
>>>> - Don't use ``len(self._docweight)`` in okapiindex _search_wids
>>>> method
>>>> (obtaining the length of a BTree is very expensive at scale).
>>>> Instead use self.documentCount(). Also a Zope2 port.
>>> Crap! this set of performance fixes was added *six years ago* to
>>> the
>>> Zope2 version from which zope.index was forked!
>>>
>>> Hasn't anybody been using this package?
>>
>> We're using this package. The text index I can only remember in a
>> not-so-critical piece where performance currently is not an issue.
>> Also,
>> following checkins even today wouldn't have me remember that this
>> code
>> is shared.
>
> The code which now lives in 'zope.index' is a copy-and-rename-
> everything
> fork of what was in the Zope2 PluggableIndexes / ZCTextIndex
> products as
> of around Christmas, 2002. The fix I was replying to is *far* from
> the
> first one which didn't get ported from subsequent changes to the Zope2
> indexes, which have obviously been in *heavy* production use.
>
> I propose that we consider merging the two implementations, along the
> lines of the following:
>
> 1. Review the change history of the two codebases since the original
> fork, porting relevant changes from the Z2 indexes to the
> corresponding Z3 implementations.
>
> 2. Review / update the tests for the Z3 indexes, with a goal of 100%
> coverage, as well as improving the "quality" of the tests.
>
> 3. Re-implement the Z2 indexes as thin wrappers around the Z3
> versions,
> ensuring that all existing Z2 tests continue to pass.
>
> This is somewhat the same pattern as Andreas used to merge the ZPT
> implementations, I think. This effort could be the focus of a sprint
> team, if there was interest.
>
>
> Tres.
> - --
> ===================================================================
> Tres Seaver +1 540-429-0999 tseaver at palladion.com
> Palladion Software "Excellence by Design" http://palladion.com
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.6 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>
> iD8DBQFKL9sQ+gerLs4ltQ4RAksCAKDWRMu820PO+oRQNun0VC1LrFjvOACfU6pE
> uVtYzoliBjQgI5gark3ALTw=
> =+WAL
> -----END PGP SIGNATURE-----
>
> _______________________________________________
> Zope-Dev maillist - Zope-Dev at zope.org
> http://mail.zope.org/mailman/listinfo/zope-dev
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://mail.zope.org/mailman/listinfo/zope-announce
> http://mail.zope.org/mailman/listinfo/zope )
--
Jim Fulton
Zope Corporation
More information about the Zope-Dev
mailing list