equal
deleted
inserted
replaced
403 self._divert = False |
403 self._divert = False |
404 self.filteredrevs = frozenset() |
404 self.filteredrevs = frozenset() |
405 self._copiesstorage = opener.options.get(b'copies-storage') |
405 self._copiesstorage = opener.options.get(b'copies-storage') |
406 |
406 |
407 def delayupdate(self, tr): |
407 def delayupdate(self, tr): |
408 b"delay visibility of index updates to other readers" |
408 """delay visibility of index updates to other readers""" |
409 |
409 |
410 if not self._delayed: |
410 if not self._delayed: |
411 if len(self) == 0: |
411 if len(self) == 0: |
412 self._divert = True |
412 self._divert = True |
413 if self._realopener.exists(self.indexfile + b'.a'): |
413 if self._realopener.exists(self.indexfile + b'.a'): |
421 self._delayed = True |
421 self._delayed = True |
422 tr.addpending(b'cl-%i' % id(self), self._writepending) |
422 tr.addpending(b'cl-%i' % id(self), self._writepending) |
423 tr.addfinalize(b'cl-%i' % id(self), self._finalize) |
423 tr.addfinalize(b'cl-%i' % id(self), self._finalize) |
424 |
424 |
425 def _finalize(self, tr): |
425 def _finalize(self, tr): |
426 b"finalize index updates" |
426 """finalize index updates""" |
427 self._delayed = False |
427 self._delayed = False |
428 self.opener = self._realopener |
428 self.opener = self._realopener |
429 # move redirected index data back into place |
429 # move redirected index data back into place |
430 if self._divert: |
430 if self._divert: |
431 assert not self._delaybuf |
431 assert not self._delaybuf |
441 self._divert = False |
441 self._divert = False |
442 # split when we're done |
442 # split when we're done |
443 self._enforceinlinesize(tr) |
443 self._enforceinlinesize(tr) |
444 |
444 |
445 def _writepending(self, tr): |
445 def _writepending(self, tr): |
446 b"create a file containing the unfinalized state for pretxnchangegroup" |
446 """create a file containing the unfinalized state for |
|
447 pretxnchangegroup""" |
447 if self._delaybuf: |
448 if self._delaybuf: |
448 # make a temporary copy of the index |
449 # make a temporary copy of the index |
449 fp1 = self._realopener(self.indexfile) |
450 fp1 = self._realopener(self.indexfile) |
450 pendingfilename = self.indexfile + b".a" |
451 pendingfilename = self.indexfile + b".a" |
451 # register as a temp file to ensure cleanup on failure |
452 # register as a temp file to ensure cleanup on failure |