hgext3rd/evolve/depthcache.py
changeset 3340 fd90e73bf79a
parent 3332 7d4c157b6519
child 3350 b98f9cd84581
equal deleted inserted replaced
3339:f0933cdf614d 3340:fd90e73bf79a
    76             super(depthcacherepo, self).destroyed()
    76             super(depthcacherepo, self).destroyed()
    77 
    77 
    78         if util.safehasattr(repo, 'updatecaches'):
    78         if util.safehasattr(repo, 'updatecaches'):
    79             @localrepo.unfilteredmethod
    79             @localrepo.unfilteredmethod
    80             def updatecaches(self, tr=None):
    80             def updatecaches(self, tr=None):
    81                 if (repo.ui.configbool('experimental', 'obshashrange',
    81                 if utility.shouldwarmcache(repo):
    82                                        False)
       
    83                         and repo.ui.configbool('experimental',
       
    84                                                'obshashrange.warm-cache',
       
    85                                                True)):
       
    86                     self.depthcache.update(repo)
    82                     self.depthcache.update(repo)
    87                     self.depthcache.save(repo)
    83                     self.depthcache.save(repo)
    88                 super(depthcacherepo, self).updatecaches(tr)
    84                 super(depthcacherepo, self).updatecaches(tr)
    89 
    85 
    90         else:
    86         else:
    96                     repo = reporef()
    92                     repo = reporef()
    97                     if repo is None:
    93                     if repo is None:
    98                         return
    94                         return
    99                     repo = repo.unfiltered()
    95                     repo = repo.unfiltered()
   100 
    96 
   101                 if (repo.ui.configbool('experimental', 'obshashrange',
    97                 if utility.shouldwarmcache(repo):
   102                                        False)
       
   103                         and repo.ui.configbool('experimental',
       
   104                                                'obshashrange.warm-cache',
       
   105                                                True)):
       
   106                     tr.addpostclose('warmcache-00depthcache', _warmcache)
    98                     tr.addpostclose('warmcache-00depthcache', _warmcache)
   107                 return tr
    99                 return tr
   108 
   100 
   109     repo.__class__ = depthcacherepo
   101     repo.__class__ = depthcacherepo
   110 
   102