Log message for revision 94047:
  Reverse searching order; start with the presumably smaller specific set and 
work our way up to larger and larger docid sets. This makes intersecting faster 
for most common index distributions.

Changed:
  U   Zope/trunk/lib/python/Products/PluginIndexes/PathIndex/PathIndex.py

-=-
Modified: Zope/trunk/lib/python/Products/PluginIndexes/PathIndex/PathIndex.py
===================================================================
--- Zope/trunk/lib/python/Products/PluginIndexes/PathIndex/PathIndex.py 
2008-12-13 23:01:27 UTC (rev 94046)
+++ Zope/trunk/lib/python/Products/PluginIndexes/PathIndex/PathIndex.py 
2008-12-14 10:42:56 UTC (rev 94047)
@@ -178,7 +178,7 @@
             return IISet(self._unindex.keys())
 
         results = None
-        for i, comp in enumerate(comps):
+        for i, comp in reversed(list(enumerate(comps))):
             if not self._index.get(comp, {}).has_key(level+i): return IISet()
             results = intersection(results, self._index[comp][level+i])
         return results

_______________________________________________
Zope-Checkins maillist  -  Zope-Checkins@zope.org
http://mail.zope.org/mailman/listinfo/zope-checkins

Reply via email to