##// END OF EJS Templates
tests: require revlog store with test-repair-strip.t...
Gregory Szorc -
r37443:e1d4be95 default
parent child Browse files
Show More
@@ -1,139 +1,139 b''
1 #require unix-permissions no-root
1 #require unix-permissions no-root reporevlogstore
2
2
3 $ cat > $TESTTMP/dumpjournal.py <<EOF
3 $ cat > $TESTTMP/dumpjournal.py <<EOF
4 > import sys
4 > import sys
5 > for entry in sys.stdin.read().split('\n'):
5 > for entry in sys.stdin.read().split('\n'):
6 > if entry:
6 > if entry:
7 > print(entry.split('\x00')[0])
7 > print(entry.split('\x00')[0])
8 > EOF
8 > EOF
9
9
10 $ echo "[extensions]" >> $HGRCPATH
10 $ echo "[extensions]" >> $HGRCPATH
11 $ echo "mq=">> $HGRCPATH
11 $ echo "mq=">> $HGRCPATH
12
12
13 $ teststrip() {
13 $ teststrip() {
14 > hg -q up -C $1
14 > hg -q up -C $1
15 > echo % before update $1, strip $2
15 > echo % before update $1, strip $2
16 > hg parents
16 > hg parents
17 > chmod -$3 $4
17 > chmod -$3 $4
18 > hg strip $2 2>&1 | sed 's/\(bundle\).*/\1/' | sed 's/Permission denied.*\.hg\/store\/\(.*\)/Permission denied \.hg\/store\/\1/'
18 > hg strip $2 2>&1 | sed 's/\(bundle\).*/\1/' | sed 's/Permission denied.*\.hg\/store\/\(.*\)/Permission denied \.hg\/store\/\1/'
19 > echo % after update $1, strip $2
19 > echo % after update $1, strip $2
20 > chmod +$3 $4
20 > chmod +$3 $4
21 > hg verify
21 > hg verify
22 > echo % journal contents
22 > echo % journal contents
23 > if [ -f .hg/store/journal ]; then
23 > if [ -f .hg/store/journal ]; then
24 > cat .hg/store/journal | $PYTHON $TESTTMP/dumpjournal.py
24 > cat .hg/store/journal | $PYTHON $TESTTMP/dumpjournal.py
25 > else
25 > else
26 > echo "(no journal)"
26 > echo "(no journal)"
27 > fi
27 > fi
28 > ls .hg/store/journal >/dev/null 2>&1 && hg recover
28 > ls .hg/store/journal >/dev/null 2>&1 && hg recover
29 > ls .hg/strip-backup/* >/dev/null 2>&1 && hg unbundle -q .hg/strip-backup/*
29 > ls .hg/strip-backup/* >/dev/null 2>&1 && hg unbundle -q .hg/strip-backup/*
30 > rm -rf .hg/strip-backup
30 > rm -rf .hg/strip-backup
31 > }
31 > }
32
32
33 $ hg init test
33 $ hg init test
34 $ cd test
34 $ cd test
35 $ echo a > a
35 $ echo a > a
36 $ hg -q ci -m "a" -A
36 $ hg -q ci -m "a" -A
37 $ echo b > b
37 $ echo b > b
38 $ hg -q ci -m "b" -A
38 $ hg -q ci -m "b" -A
39 $ echo b2 >> b
39 $ echo b2 >> b
40 $ hg -q ci -m "b2" -A
40 $ hg -q ci -m "b2" -A
41 $ echo c > c
41 $ echo c > c
42 $ hg -q ci -m "c" -A
42 $ hg -q ci -m "c" -A
43 $ teststrip 0 2 w .hg/store/data/b.i
43 $ teststrip 0 2 w .hg/store/data/b.i
44 % before update 0, strip 2
44 % before update 0, strip 2
45 changeset: 0:cb9a9f314b8b
45 changeset: 0:cb9a9f314b8b
46 user: test
46 user: test
47 date: Thu Jan 01 00:00:00 1970 +0000
47 date: Thu Jan 01 00:00:00 1970 +0000
48 summary: a
48 summary: a
49
49
50 saved backup bundle
50 saved backup bundle
51 transaction abort!
51 transaction abort!
52 failed to truncate data/b.i
52 failed to truncate data/b.i
53 rollback failed - please run hg recover
53 rollback failed - please run hg recover
54 strip failed, backup bundle
54 strip failed, backup bundle
55 abort: Permission denied .hg/store/data/b.i
55 abort: Permission denied .hg/store/data/b.i
56 % after update 0, strip 2
56 % after update 0, strip 2
57 abandoned transaction found - run hg recover
57 abandoned transaction found - run hg recover
58 checking changesets
58 checking changesets
59 checking manifests
59 checking manifests
60 crosschecking files in changesets and manifests
60 crosschecking files in changesets and manifests
61 checking files
61 checking files
62 b@?: rev 1 points to nonexistent changeset 2
62 b@?: rev 1 points to nonexistent changeset 2
63 (expected 1)
63 (expected 1)
64 b@?: 736c29771fba not in manifests
64 b@?: 736c29771fba not in manifests
65 warning: orphan data file 'data/c.i'
65 warning: orphan data file 'data/c.i'
66 2 files, 2 changesets, 3 total revisions
66 2 files, 2 changesets, 3 total revisions
67 2 warnings encountered!
67 2 warnings encountered!
68 2 integrity errors encountered!
68 2 integrity errors encountered!
69 % journal contents
69 % journal contents
70 00changelog.i
70 00changelog.i
71 00manifest.i
71 00manifest.i
72 data/b.i
72 data/b.i
73 data/c.i
73 data/c.i
74 rolling back interrupted transaction
74 rolling back interrupted transaction
75 checking changesets
75 checking changesets
76 checking manifests
76 checking manifests
77 crosschecking files in changesets and manifests
77 crosschecking files in changesets and manifests
78 checking files
78 checking files
79 2 files, 2 changesets, 2 total revisions
79 2 files, 2 changesets, 2 total revisions
80 $ teststrip 0 2 r .hg/store/data/b.i
80 $ teststrip 0 2 r .hg/store/data/b.i
81 % before update 0, strip 2
81 % before update 0, strip 2
82 changeset: 0:cb9a9f314b8b
82 changeset: 0:cb9a9f314b8b
83 user: test
83 user: test
84 date: Thu Jan 01 00:00:00 1970 +0000
84 date: Thu Jan 01 00:00:00 1970 +0000
85 summary: a
85 summary: a
86
86
87 abort: Permission denied .hg/store/data/b.i
87 abort: Permission denied .hg/store/data/b.i
88 % after update 0, strip 2
88 % after update 0, strip 2
89 checking changesets
89 checking changesets
90 checking manifests
90 checking manifests
91 crosschecking files in changesets and manifests
91 crosschecking files in changesets and manifests
92 checking files
92 checking files
93 3 files, 4 changesets, 4 total revisions
93 3 files, 4 changesets, 4 total revisions
94 % journal contents
94 % journal contents
95 (no journal)
95 (no journal)
96 $ teststrip 0 2 w .hg/store/00manifest.i
96 $ teststrip 0 2 w .hg/store/00manifest.i
97 % before update 0, strip 2
97 % before update 0, strip 2
98 changeset: 0:cb9a9f314b8b
98 changeset: 0:cb9a9f314b8b
99 user: test
99 user: test
100 date: Thu Jan 01 00:00:00 1970 +0000
100 date: Thu Jan 01 00:00:00 1970 +0000
101 summary: a
101 summary: a
102
102
103 saved backup bundle
103 saved backup bundle
104 transaction abort!
104 transaction abort!
105 failed to truncate 00manifest.i
105 failed to truncate 00manifest.i
106 rollback failed - please run hg recover
106 rollback failed - please run hg recover
107 strip failed, backup bundle
107 strip failed, backup bundle
108 abort: Permission denied .hg/store/00manifest.i
108 abort: Permission denied .hg/store/00manifest.i
109 % after update 0, strip 2
109 % after update 0, strip 2
110 abandoned transaction found - run hg recover
110 abandoned transaction found - run hg recover
111 checking changesets
111 checking changesets
112 checking manifests
112 checking manifests
113 manifest@?: rev 2 points to nonexistent changeset 2
113 manifest@?: rev 2 points to nonexistent changeset 2
114 manifest@?: 3362547cdf64 not in changesets
114 manifest@?: 3362547cdf64 not in changesets
115 manifest@?: rev 3 points to nonexistent changeset 3
115 manifest@?: rev 3 points to nonexistent changeset 3
116 manifest@?: 265a85892ecb not in changesets
116 manifest@?: 265a85892ecb not in changesets
117 crosschecking files in changesets and manifests
117 crosschecking files in changesets and manifests
118 c@3: in manifest but not in changeset
118 c@3: in manifest but not in changeset
119 checking files
119 checking files
120 b@?: rev 1 points to nonexistent changeset 2
120 b@?: rev 1 points to nonexistent changeset 2
121 (expected 1)
121 (expected 1)
122 c@?: rev 0 points to nonexistent changeset 3
122 c@?: rev 0 points to nonexistent changeset 3
123 3 files, 2 changesets, 4 total revisions
123 3 files, 2 changesets, 4 total revisions
124 1 warnings encountered!
124 1 warnings encountered!
125 7 integrity errors encountered!
125 7 integrity errors encountered!
126 (first damaged changeset appears to be 3)
126 (first damaged changeset appears to be 3)
127 % journal contents
127 % journal contents
128 00changelog.i
128 00changelog.i
129 00manifest.i
129 00manifest.i
130 data/b.i
130 data/b.i
131 data/c.i
131 data/c.i
132 rolling back interrupted transaction
132 rolling back interrupted transaction
133 checking changesets
133 checking changesets
134 checking manifests
134 checking manifests
135 crosschecking files in changesets and manifests
135 crosschecking files in changesets and manifests
136 checking files
136 checking files
137 2 files, 2 changesets, 2 total revisions
137 2 files, 2 changesets, 2 total revisions
138
138
139 $ cd ..
139 $ cd ..
General Comments 0
You need to be logged in to leave comments. Login now