/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/remote.py

  • Committer: Robert Collins
  • Date: 2009-04-28 06:53:29 UTC
  • mto: This revision was merged to the branch mainline in revision 4319.
  • Revision ID: robertc@robertcollins.net-20090428065329-vx84wza4w6l979ai
Enable caching of negative revision lookups in RemoteRepository write locks when no _real_repository has been constructed.

Show diffs side-by-side

added added

removed removed

Lines of Context:
605
605
        self._lock_token = None
606
606
        self._lock_count = 0
607
607
        self._leave_lock = False
 
608
        # Cache of revision parents; misses are cached during read locks, and
 
609
        # write locks when no _real_repository has been set.
608
610
        self._unstacked_provider = graph.CachingParentsProvider(
609
611
            get_parent_map=self._get_parent_map_rpc)
610
612
        self._unstacked_provider.disable_cache()
686
688
        invocation. If in doubt chat to the bzr network team.
687
689
        """
688
690
        if self._real_repository is None:
 
691
            self._unstacked_provider.missing_keys.clear()
689
692
            self.bzrdir._ensure_real()
690
693
            self._set_real_repository(
691
694
                self.bzrdir._real_bzrdir.open_repository())
892
895
                self._leave_lock = False
893
896
            self._lock_mode = 'w'
894
897
            self._lock_count = 1
895
 
            self._unstacked_provider.enable_cache(cache_misses=False)
 
898
            cache_misses = self._real_repository is None
 
899
            self._unstacked_provider.enable_cache(cache_misses=cache_misses)
896
900
        elif self._lock_mode == 'r':
897
901
            raise errors.ReadOnlyError(self)
898
902
        else:
1605
1609
 
1606
1610
    def insert_stream(self, stream, src_format, resume_tokens):
1607
1611
        target = self.target_repo
 
1612
        target._unstacked_provider.missing_keys.clear()
1608
1613
        if target._lock_token:
1609
1614
            verb = 'Repository.insert_stream_locked'
1610
1615
            extra_args = (target._lock_token or '',)