##// END OF EJS Templates
dirstate: invalidate on all exceptions...
marmoute -
r51000:2323b74f default
parent child Browse files
Show More
@@ -191,7 +191,7 b' class dirstate:'
191 191 self._changing_level += 1
192 192 try:
193 193 yield
194 except Exception:
194 except: # re-raises
195 195 self.invalidate()
196 196 raise
197 197 finally:
@@ -771,9 +771,18 b' wdir(), but a matching revision is detec'
771 771 $ hg log -qr 'file("set:exec()")'
772 772 9:be1b433a65b1
773 773
774 Test a fatal error interrupting an update. Verify that status report dirty
775 files correctly after an interrupted update. Also verify that checking all
776 hashes reveals it isn't clean.
774 Test a fatal error interrupting an update
775 -----------------------------------------
776
777 In a previous version this test was tasked to:
778 | verify that status report dirty files correctly after an interrupted
779 | update. Also verify that checking all hashes reveals it isn't clean.
780
781 In the mean time improvement to the update logic means it is much harder to get the dirstate file written too early. So the original intend seems "fine".
782
783 However, it shows another error where the standin file for large1 seems to be
784 silently updated, confusing the general logic. This seems to have been broken
785 before our updates and the test is marked as such.
777 786
778 787 Start with clean dirstates:
779 788 $ hg up --quiet --clean --rev "8^"
@@ -794,19 +803,24 b' added:'
794 803 [254]
795 804 Check large1 content and status ... and that update will undo modifications:
796 805 $ hg id
797 f1bf30eb88cc
806 d65e59e952a9+ (known-bad-output !)
807 d65e59e952a9 (missing-correct-output !)
798 808 $ cat large1
799 809 large1 in #3
800 810 $ hg st
801 M large1
802 ! largeX
803 811 $ hg up -Cr 8
804 812 getting changed largefiles
805 2 largefiles updated, 0 removed
813 1 largefiles updated, 0 removed (known-bad-output !)
814 2 largefiles updated, 0 removed (missing-correct-output !)
806 815 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
807 816 $ cat large1
808 manually modified before 'hg transplant --continue'
817 large1 in #3 (known-bad-output !)
818 manually modified before 'hg transplant --continue' (missing-correct-output !)
809 819 $ hg st
820 M large1 (known-bad-output !)
821
822 $ hg revert --all --no-backup
823 reverting .hglf/large1 (known-bad-output !)
810 824 Force largefiles rehashing and check that all changes have been caught by
811 825 status and update:
812 826 $ rm .hg/largefiles/dirstate
General Comments 0
You need to be logged in to leave comments. Login now