Switch to side-by-side view
--- a/Allura/allura/lib/utils.py +++ b/Allura/allura/lib/utils.py @@ -87,3 +87,15 @@ if v is not None) record.exc_info = None # Never put tracebacks in the rtstats log WatchedFileHandler.emit(self, record) + +def chunked_iterator(query, pagesize=1024): + page = 0 + while True: + results = ( + query + .skip(pagesize*page) + .limit(pagesize) + .all()) + if not results: break + yield results + page += 1