comparison tests/test-repair-strip.out @ 8073:e8a28556a0a8

strip: make repair.strip transactional to avoid repository corruption Uses a transaction instance from the local repository to journal the truncation of revlog files, such that if a strip only partially completes, hg recover will be able to finish the truncate of all the files. The potential unbundling of changes that have been backed up to be restored later will, in case of an error, have to be unbundled manually. The difference is that it will be possible to recover the repository state so the unbundle can actually succeed.
author Henrik Stuart <henrik.stuart@edlund.dk>
date Thu, 16 Apr 2009 15:34:03 +0200
parents
children 29540554def8
comparison
equal deleted inserted replaced
8072:ecf7795479d5 8073:e8a28556a0a8
1 % before update 0, strip 1
2 changeset: 0:cb9a9f314b8b
3 user: test
4 date: Thu Jan 01 00:00:00 1970 +0000
5 summary: a
6
7 saving bundle to
8 transaction abort!
9 failed to truncate data/b.i
10 rollback failed - please run hg recover
11 abort: Permission denied .hg/store/data/b.i
12 % after update 0, strip 1
13 checking changesets
14 checking manifests
15 crosschecking files in changesets and manifests
16 checking files
17 warning: orphan revlog 'data/b.i'
18 1 files, 1 changesets, 1 total revisions
19 1 warnings encountered!
20 % journal contents
21 00changelog.i
22 00manifest.i
23 data/b.i
24 data/c.i
25 rolling back interrupted transaction
26 checking changesets
27 checking manifests
28 crosschecking files in changesets and manifests
29 checking files
30 1 files, 1 changesets, 1 total revisions
31 % before update 0, strip 1
32 changeset: 0:cb9a9f314b8b
33 user: test
34 date: Thu Jan 01 00:00:00 1970 +0000
35 summary: a
36
37 abort: Permission denied .hg/store/data/b.i
38 % after update 0, strip 1
39 checking changesets
40 checking manifests
41 crosschecking files in changesets and manifests
42 checking files
43 3 files, 3 changesets, 3 total revisions
44 % journal contents
45 cat: .hg/store/journal: No such file or directory
46 % before update 0, strip 1
47 changeset: 0:cb9a9f314b8b
48 user: test
49 date: Thu Jan 01 00:00:00 1970 +0000
50 summary: a
51
52 saving bundle to
53 transaction abort!
54 failed to truncate 00changelog.i
55 rollback failed - please run hg recover
56 abort: Permission denied .hg/store/00changelog.i
57 % after update 0, strip 1
58 checking changesets
59 checking manifests
60 crosschecking files in changesets and manifests
61 1: changeset refers to unknown manifest a539ce0c1a22
62 2: changeset refers to unknown manifest e3738bf54399
63 b@1: in changeset but not in manifest
64 c@2: in changeset but not in manifest
65 checking files
66 data/b.i@1: missing revlog!
67 0: empty or missing b
68 data/c.i@2: missing revlog!
69 0: empty or missing c
70 3 files, 3 changesets, 1 total revisions
71 8 integrity errors encountered!
72 (first damaged changeset appears to be 0)
73 % journal contents
74 00changelog.i
75 00manifest.i
76 data/b.i
77 data/c.i
78 rolling back interrupted transaction
79 checking changesets
80 checking manifests
81 crosschecking files in changesets and manifests
82 checking files
83 1 files, 1 changesets, 1 total revisions