Switch to unified view

a/Allura/allura/lib/utils.py b/Allura/allura/lib/utils.py
...
...
118
            '%s=%s' % (k,v) for k,v in sorted(kwpairs.iteritems())
118
            '%s=%s' % (k,v) for k,v in sorted(kwpairs.iteritems())
119
            if v is not None)
119
            if v is not None)
120
        record.exc_info = None # Never put tracebacks in the rtstats log
120
        record.exc_info = None # Never put tracebacks in the rtstats log
121
        WatchedFileHandler.emit(self, record)
121
        WatchedFileHandler.emit(self, record)
122
122
123
def chunked_find(cls, query=None, pagesize=1024, sort=None):
123
def chunked_find(cls, query=None, pagesize=1024):
124
    if query is None: query = {}
124
    if query is None: query = {}
125
    page = 0
125
    page = 0
126
    while True:
126
    while True:
127
        qry = (
127
        results = (
128
            cls.query.find(query)
128
            cls.query.find(query)
129
            .skip(pagesize*page)
129
            .skip(pagesize*page)
130
            .limit(pagesize))
130
            .limit(pagesize)
131
        if sort is not None:
131
            .all())
132
            qry = qry.sort(*sort)
133
        results = qry.all()
134
        if not results: break
132
        if not results: break
135
        yield results
133
        yield results
136
        page += 1
134
        page += 1
137
135
138
class AntiSpam(object):
136
class AntiSpam(object):