~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/fetch.py

  • Committer: Aaron Bentley
  • Date: 2006-08-25 21:51:18 UTC
  • mto: This revision was merged to the branch mainline in revision 1997.
  • Revision ID: aaron.bentley@utoronto.ca-20060825215118-352f6465e332ac0a
Retrieve only 500 revision trees at once

Show diffs side-by-side

added added

removed removed

Lines of Context:
283
283
 
284
284
class Inter1and2Helper(object):
285
285
 
 
286
    def iter_rev_trees(self, revs, source):
 
287
        while len(revs):
 
288
            for tree in source.revision_trees(revs[:500]):
 
289
                if tree.inventory.revision_id is None:
 
290
                    tree.inventory.revision_id = tree.get_revision_id()
 
291
                yield tree
 
292
            revs = revs[500:]
 
293
 
286
294
    def generate_root_texts(self, fetcher, revs):
287
 
        revision_trees = fetcher.from_repository.revision_trees(revs)
288
295
        inventory_weave = fetcher.from_repository.get_inventory_weave()
289
 
        for tree in revision_trees:
 
296
        for tree in self.iter_rev_trees(revs, fetcher.from_repository):
290
297
            parent_texts = {}
291
298
            revision_id = tree.inventory.root.revision
292
299
            parents = inventory_weave.get_parents(revision_id)
300
307
 
301
308
 
302
309
    def regenerate_inventory(self, fetcher, revs):
303
 
        revision_trees = fetcher.from_repository.revision_trees(revs)
304
310
        inventory_weave = fetcher.from_repository.get_inventory_weave()
305
 
        for tree in revision_trees:
 
311
        for tree in self.iter_rev_trees(revs, fetcher.from_repository):
306
312
            parents = inventory_weave.get_parents(tree.get_revision_id())
307
313
            if tree.inventory.revision_id is None:
308
314
                tree.inventory.revision_id = tree.get_revision_id()