~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/reconcile.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2007-10-16 02:42:33 UTC
  • mfrom: (2906.1.1 reconcile-speed)
  • Revision ID: pqm@pqm.ubuntu.com-20071016024233-6fmmyqoh0cfnsni8
(Andrew Bennetts) Speed up reconcile by not repeatedly fetching the full inventories, by cache heads and parents queries, and by fetching revision trees in batches.

Show diffs side-by-side

added added

removed removed

Lines of Context:
372
372
        """
373
373
        transaction = self.repo.get_transaction()
374
374
        revision_versions = repository._RevisionTextVersionCache(self.repo)
 
375
        versions = self.revisions.versions()
 
376
        revision_versions.prepopulate_revs(versions)
375
377
        for num, file_id in enumerate(self.repo.weave_store):
376
378
            self.pb.update('Fixing text parents', num,
377
379
                           len(self.repo.weave_store))
378
380
            vf = self.repo.weave_store.get_weave(file_id, transaction)
379
381
            vf_checker = self.repo.get_versioned_file_checker(
380
 
                self.revisions.versions(), revision_versions)
 
382
                versions, revision_versions)
381
383
            versions_with_bad_parents = vf_checker.check_file_version_parents(
382
384
                vf, file_id)
383
385
            if len(versions_with_bad_parents) == 0: