On Wed, 20 Sep 2000 14:51:01 +0100, Chris Withers <[EMAIL PROTECTED]>

>Maik Roeder wrote:
>> <dtml-in "Catalog()" reverse sort=bobobase_modification_time size=50>
>> Show stuff in Catalog here.
>> </dtml-with>
>That doesn't take advantage of the Catalog's lazy searching, AFAIK, and
>on a site with a lot of content that could be bad.

Lazy searching is not an issue - that definitely happens. The catalog
always uses its cached metadata for searching and sorting.

A more interesting question is over sorting-by-index. Whether or not
this happens depends on the relative size of two sets:

a. The number of *different* *values* for the sort attribute over the
whole catalog content.

b. The number of matches found.

If number(b)>number(a) then sorting-by-index works well. This might
happen for example if you are sorting by "author name", where there
are more matches than there are authors. This is efficient since the
catalog precomputes the matches grouped by author name, and it only
needs to sort the groups.

If number(a)<number(b) then there is no sorting-by-index. In this case
there are more groups than matches (ie many groups are empty) and it
is more efficient to sort matches. This is probably the case for an
index of bobobase_modification_time

Toby Dickenson

Zope maillist  -  [EMAIL PROTECTED]
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-dev )

Reply via email to