comparison mercurial/branchmap.py @ 51548:1a9bdd0e1c44

branchcache: write branchmap in subset inheritance order This way, we can guarantee a valid subset has been written before touching the branchmap of another filter. This is especially useful as we are bout to start deleting outdated branchmap file.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Fri, 08 Mar 2024 15:50:15 +0100
parents 0ddc34330d41
children 94f821490645
comparison
equal deleted inserted replaced
51547:0ddc34330d41 51548:1a9bdd0e1c44
164 def clear(self): 164 def clear(self):
165 self._per_filter.clear() 165 self._per_filter.clear()
166 166
167 def write_delayed(self, repo): 167 def write_delayed(self, repo):
168 unfi = repo.unfiltered() 168 unfi = repo.unfiltered()
169 for filtername, cache in self._per_filter.items(): 169 for filtername in repoviewutil.get_ordered_subset():
170 cache = self._per_filter.get(filtername)
171 if cache is None:
172 continue
170 if cache._delayed: 173 if cache._delayed:
171 if filtername is None: 174 if filtername is None:
172 repo = unfi 175 repo = unfi
173 else: 176 else:
174 repo = unfi.filtered(filtername) 177 repo = unfi.filtered(filtername)