##// END OF EJS Templates
obsstore: delay loading markers from obsstore file...
Yuya Nishihara -
r26309:44918682 default
parent child Browse files
Show More
@@ -520,16 +520,9 b' class obsstore(object):'
520 def __init__(self, svfs, defaultformat=_fm1version, readonly=False):
520 def __init__(self, svfs, defaultformat=_fm1version, readonly=False):
521 # caches for various obsolescence related cache
521 # caches for various obsolescence related cache
522 self.caches = {}
522 self.caches = {}
523 self._all = []
524 self.svfs = svfs
523 self.svfs = svfs
525 data = svfs.tryread('obsstore')
526 self._version = defaultformat
524 self._version = defaultformat
527 self._readonly = readonly
525 self._readonly = readonly
528 if data:
529 self._version, markers = _readmarkers(data)
530 markers = list(markers)
531 _checkinvalidmarkers(markers)
532 self._all = markers
533
526
534 def __iter__(self):
527 def __iter__(self):
535 return iter(self._all)
528 return iter(self._all)
@@ -617,6 +610,16 b' class obsstore(object):'
617 return self.add(transaction, markers)
610 return self.add(transaction, markers)
618
611
619 @propertycache
612 @propertycache
613 def _all(self):
614 data = self.svfs.tryread('obsstore')
615 if not data:
616 return []
617 self._version, markers = _readmarkers(data)
618 markers = list(markers)
619 _checkinvalidmarkers(markers)
620 return markers
621
622 @propertycache
620 def successors(self):
623 def successors(self):
621 successors = {}
624 successors = {}
622 _addsuccessors(successors, self._all)
625 _addsuccessors(successors, self._all)
General Comments 0
You need to be logged in to leave comments. Login now