Show More
@@ -448,6 +448,7 b' class changelog(revlog.revlog):' | |||
|
448 | 448 | |
|
449 | 449 | def delayupdate(self, tr): |
|
450 | 450 | """delay visibility of index updates to other readers""" |
|
451 | assert not self._inner.is_open | |
|
451 | 452 | if self._docket is None and not self._delayed: |
|
452 | 453 | if len(self) == 0: |
|
453 | 454 | self._divert = True |
@@ -468,6 +469,7 b' class changelog(revlog.revlog):' | |||
|
468 | 469 | |
|
469 | 470 | def _finalize(self, tr): |
|
470 | 471 | """finalize index updates""" |
|
472 | assert not self._inner.is_open | |
|
471 | 473 | self._delayed = False |
|
472 | 474 | self.opener = self._realopener |
|
473 | 475 | self._inner.opener = self.opener |
@@ -494,6 +496,7 b' class changelog(revlog.revlog):' | |||
|
494 | 496 | def _writepending(self, tr): |
|
495 | 497 | """create a file containing the unfinalized state for |
|
496 | 498 | pretxnchangegroup""" |
|
499 | assert not self._inner.is_open | |
|
497 | 500 | if self._docket: |
|
498 | 501 | return self._docket.write(tr, pending=True) |
|
499 | 502 | if self._delaybuf: |
@@ -620,6 +620,13 b' class _InnerRevlog:' | |||
|
620 | 620 | """True is a writing context is open""" |
|
621 | 621 | return self._writinghandles is not None |
|
622 | 622 | |
|
623 | @property | |
|
624 | def is_open(self): | |
|
625 | """True if any file handle is being held | |
|
626 | ||
|
627 | Used for assert and debug in the python code""" | |
|
628 | return self._segmentfile.is_open or self._segmentfile_sidedata.is_open | |
|
629 | ||
|
623 | 630 | @contextlib.contextmanager |
|
624 | 631 | def writing(self, transaction, data_end=None, sidedata_end=None): |
|
625 | 632 | """Open the revlog files for writing |
@@ -50,6 +50,15 b' class randomaccessfile:' | |||
|
50 | 50 | self._cached_chunk = b'' |
|
51 | 51 | self._cached_chunk_position = 0 |
|
52 | 52 | |
|
53 | @property | |
|
54 | def is_open(self): | |
|
55 | """True if any file handle is being held | |
|
56 | ||
|
57 | Used for assert and debug in the python code""" | |
|
58 | return ( | |
|
59 | self.reading_handle is not None or self.writing_handle is not None | |
|
60 | ) | |
|
61 | ||
|
53 | 62 | def _open(self, mode=b'r'): |
|
54 | 63 | """Return a file object""" |
|
55 | 64 | return self.opener(self.filename, mode=mode) |
General Comments 0
You need to be logged in to leave comments.
Login now