/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/graph.py

  • Committer: Aaron Bentley
  • Date: 2008-12-03 05:09:44 UTC
  • mto: This revision was merged to the branch mainline in revision 3892.
  • Revision ID: aaron@aaronbentley.com-20081203050944-biuf61wbttr0wrzv
Allow miss caching to be disabled.

Show diffs side-by-side

added added

removed removed

Lines of Context:
122
122
        else:
123
123
            self._get_parent_map = get_parent_map
124
124
        self._parents_map = {}
 
125
        self._cache_misses = True
125
126
        self._debug = debug
126
127
        if self._debug:
127
128
            self._requested_parents = None
129
130
    def __repr__(self):
130
131
        return "%s(%r)" % (self.__class__.__name__, self._real_provider)
131
132
 
132
 
    def enable_cache(self):
 
133
    def enable_cache(self, cache_misses=True):
133
134
        """Enable cache."""
134
135
        self._parents_map = {}
 
136
        self._cache_misses = cache_misses
135
137
        if self._debug:
136
138
            self._requested_parents = set()
137
139
 
165
167
                        len(set(ancestry).intersection(parent_map)),
166
168
                        len(parent_map))
167
169
            ancestry.update(parent_map)
168
 
            ancestry.update(dict((k, None) for k in missing_revisions
169
 
                                 if k not in parent_map))
 
170
            if self._cache_misses:
 
171
                ancestry.update(dict((k, None) for k in missing_revisions
 
172
                                     if k not in parent_map))
170
173
        present_keys = [k for k in keys if ancestry.get(k) is not None]
171
174
        if self._debug:
172
175
            if self._requested_parents is not None and len(ancestry) != 0: