Here's the Collector report I just filed:
Using a slice operation like [30:] on a ZCatalog search
result causes a MemoryError because the __getslice__
implementation uses:
for i in range(i1,i2):
The __getslice__ spec says that a missing second argument
will be replaced by sys.maxint!
I think that the fix is to simply replace range with xrange.